寻找常见的块

时间:2008-09-22 20:16:39

标签: algorithm

我有两个文件(f1和f2)包含一些文本(或二进制数据) 如何快速找到常用块?

e.g。
f1:ABC DEF
f2:XXABC XEF

输出:

常见块:
长度4:f1 @ 0和f2 @ 2中的“ABC” 长度2:f1 @ 5和f2 @ 8中的“EF”

3 个答案:

答案 0 :(得分:2)

这是一个很好的工具,用于这样的目的: http://sourceforge.net/projects/duplo/

答案 1 :(得分:1)

Wikipedia有一些pseudocode用于查找两个数据序列之间最长的公共子字符串。在您的情况下,您只需从表中提取所有不是其他公共子串前缀的公共子串(即最大公共子串)。

答案 2 :(得分:1)

开源PMD项目有一个剪切粘贴检测器模块,在本页中提到:http://pmd.sourceforge.net/integrations.html