我需要找到 n 个字符串的最长公共子串并在我的项目中使用结果。
java中是否有任何现有的实现/库已经做到了这一点?
关于什么并发树 ?
这是一个小型(约 100 KB)库,可用于梅文中心。该算法使用组合Radix and 后缀树。众所周知,它有一个线性时间复杂度 (维基百科).
public static String getLongestCommonSubstring(Collection<String> strings) {
LCSubstringSolver solver = new LCSubstringSolver(new DefaultCharSequenceNodeFactory());
for (String s: strings) {
solver.add(s);
}
return solver.getLongestCommonSubstring().toString();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)