好的,所以标准算法是:
1)汉明距离
仅适用于相同长度的琴弦,但非常有效。基本上,它只计算不同字符的数量。对于自然语言文本的模糊搜索没有用。
2)Levenstein距离。Levenstein距离是根据将一个字符串转换为另一个字符串所需的“操作”次数来度量距离。这些操作包括插入,删除和替换。计算Levenstein距离的标准方法是使用动态规划。
3)广义Levenstein
/(Damerau–Levenshtein距离)
该距离还考虑了单词中字符的转置,并且可能是最适合手动输入文本的模糊匹配的编辑距离。计算距离的算法比Levenstein距离要复杂得多(检测换位并不容易)。最常见的实现是对bitap算法的修改(例如grep)。
通常,您可能需要考虑在基于kd树的某种最近邻居搜索中实现的第三个选项的实现



