实现“Levenshtein距离小于X”的所有字符串的方法

时间:2010-12-01 03:13:29

标签: data-structures levenshtein-distance

我想知道是否有一个高效的数据结构来执行“检索levenshtein距离小于X的所有字符串”。

我很少兴趣:

  • 算法说明。
  • 现有数据库/编程语言中是否存在现有实现?
  • 我可以参考的纸/文章?

2 个答案:

答案 0 :(得分:3)

这是离度较近的neighborer搜索度量空间,levenshtein距离作为度量(或距离)函数

VP-tree是解决该问题的方法之一

这个Python VP-tree implementation是一个工作演示,它显示了一个VP树如何运行它说一个单词列表它提供了一个交互式shell,你键入一个单词并返回该列表中不再有的单词然后距您键入的单词X距离

答案 1 :(得分:0)

听起来像一个简单的breadth-first search,每一代只是一个'编辑'远离前一个 - 并且检查到位以确保字符串出现在一个且只有一个级别。

使用一对循环中的一些hashsets / hashtables可以很容易地实现这一点。