我正在努力解决当前项目中的这个问题:
我想取一个ArrayList<String>
(称之为 A )并将其与很多 ArrayList<String>
进行比较,记下有多少个字符串匹配在这些数组比较中。然后,我想按照从最相似到最不相似的A的顺序对多个字符串数组进行排序。
有谁知道这样做的快速算法?不像算法那样寻找代码,但我在Java工作。
谢谢!
答案 0 :(得分:4)
我的建议:
set.contains(string)
找出每个数组列表包含的匹配项数。答案 1 :(得分:0)
如果要比较字符串之间的相似性(或差异),请尝试编辑距离算法,例如Levenshtein距离算法。
http://en.wikipedia.org/w/index.php?title=Levenshtein_distance