2015-02-06 49 views
0

为了支持用户学习英语,我想使用用户正在学习的词汇进行多项选择题测验。查找类似单词的算法

例如,如果用户正在学习“天使”然后我需要一种算法来产生一些类似的词,如“角”和“成角度的”

又如,如果用户正在学习“会计”,那么我需要一个算法来生成一些类似的词,如“accounttant”和“acountant”,“acounttant”

+4

我很乐意帮忙,但我无法理解你在这里问的问题。编辑澄清将是很好的。 – shuttle87 2015-02-06 14:23:48

+0

那么你是否试图制作出类似的“真实”单词,或者只是插入随机字符?你的两个例子显示两种可能性。 – 2015-02-06 19:32:10

回答

2

您可以计算从起始词到词汇表中每个词的Levenshtein Distance,并选择2或3个最短的词。

取决于字典中有多少单词,这可能需要很长时间,所以我建议在一定(少量)步骤之后进行挽救 - 也就是说,如果您做了3次突变但仍未到达在你的目标词后停下来继续下一步。