一尘不染

如何使用C ++查找最长的公共子字符串

algorithm

我在网上搜索了C ++ Longest Common
Substring实现,但是找不到合适的实现。我需要一个返回子字符串本身的LCS算法,所以不仅仅是LCS。

但是,我想知道如何在多个字符串之间执行此操作。

我的想法是检查2个字符串中最长的一个,然后检查所有其他字符串,但这是一个非常缓慢的过程,需要管理内存中的许多长字符串,这使我的程序非常慢。

是否知道如何加快多个字符串的速度?谢谢。

重要说明 我得到的变量之一确定了最长的公共子字符串需要放入的字符串数,因此可以给我10个字符串,并找出所有的LCS(K =
10),或者找到4个LCS。他们,但是我没有告诉我哪个,我必须找到最好的4。


阅读 180

收藏
2020-07-28

共1个答案

一尘不染

这是一篇很好的文章,介绍了如何使用C语言中的示例有效地查找所有常见的子字符串。如果只需要最长的时间,这可能会显得有些过时,但是比后缀树的一般文章更容易理解。

2020-07-28