两个以上字符串之间的相似性Java

时间:2016-07-20 20:46:47

标签: java string compare levenshtein-distance

我知道有几种算法(Soundex算法,Levenshtein距离/编辑距离和最长公共子串)可用于比较两个字符串。有没有一种已知的方法可以比较两个以上的字符串,并根据您设置的Max Levenshtein距离来消除那些最不相似的字符串?

示例:

<table>
   <tr><td>First Name*</td><td><input type='text' /></td></tr>
   <tr><td>Surname*</td><td><input type='text' /></td></tr>
</table>

假设我将Levenshtein距离设置为2,则输出应该只有三个幸存项目。

 String -> {sam, ham, jam, stackoverflow}

我的实现具有O(n ^ 2)时间复杂度。有没有更好/更聪明的方法呢?

方法签名:

Output -> {sam, ham, jam}

0 个答案:

没有答案