一尘不染

所需算法:查找字典中与自由文本中的单词相似的所有单词

algorithm

我们有大约150,000个单词的列表,当用户输入自由文本时,系统应显示词典中与自由文本中的单词非常接近的单词列表。

例如,用户输入:“我想在沃尔玛购买乐高玩具”。如果词典中包含“乐高”,“汽车”和“沃尔玛”,则系统应在列表中显示“乐高”和“沃尔玛”。“
Walmart”很明显,因为它与句子中的单词相同,但是“ Lego”也足够类似于“
Legoe”,因此值得一提。但是,没有什么类似于“汽车”,因此未显示该单词。

显示列表应该是实时的,这意味着当用户输入句子时,单词列表必须出现在屏幕上。有人知道一个好的算法吗?

该词典实际上包含可能包含空格的概念。例如,“乐高飞船”。完美的解决方案也可以识别这些多词概念。

任何建议表示赞赏。


阅读 300

收藏
2020-07-28

共1个答案

一尘不染

看一下http://norvig.com/spell-correct.html,了解一种简单的算法。本文使用Python,但最后有指向其他语言的实现的链接。

2020-07-28