繁体   English   中英

根据预先计算的哈希值比较字符串距离

[英]Comparing string distance based on precomputed hashes

我有一个很大的列表(超过200,000)字符串,我想与给定的字符串进行比较。 给定的字符串由用户插入,因此可能稍微不正确。

我希望做的是在将每个字符串添加到列表中时为每个字符串创建一些预先计算的哈希值。 此哈希将包含诸如字符串长度,所有字符的添加等信息。

我的问题是,这样的事情已经存在吗? 肯定会有一些东西让我避免在列表中的每个字符串上运行Levenshtein距离

或许还有第三种选择,我还没想过呢?

听起来你想要使用某种模糊散列。 有很多哈希函数可以做这样的事情。 经典的旧“ SOUNDEX ”算法甚至可能有效。

另一个想法 - 如果你估计输入错误的可能性很低,那么你可能实际上很好地直接命中99.9%的时间,回到SOUNDEX,这可能会捕获90%的剩余案例,然后搜索整个列出剩余0.01%的时间。

还值得检查这个讨论: 如何在大型字符串数据库中找到字符串的最佳模糊匹配

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM