string - 从给定单词列表中查找是否有一个拼写错误的单词的最佳方法

标签 string algorithm list matching

你会如何有效地解决这个问题

假设我们得到了一个单词列表 [“apple”、“banana”、“mango”]

如果我们在列表中得到一个错别字的单词, “苹果” “阿普尔” “申请” 我们输出 true

如果有多个错字,我们输出 false。

为了优化,我尝试将列表存储在包含每个单词的字母数的哈希表中,并在给定的输入中寻找相同数量的字母,以减少我们在其中查找输入的大小。我们可以对这个问题进行更快的优化吗?

最佳答案

一种可能的优化是为给定列表生成所有错别字并将它们放入映射(或一些更好的字符串查找结构)中。然后查找给定的单词 - 如果找到输出 true,否则输出 false。一个错别字的总数是:25*L,其中L是输入列表中的字母总数(假设不​​区分大小写)。

关于string - 从给定单词列表中查找是否有一个拼写错误的单词的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53969340/

相关文章:

algorithm - 最坏情况时间复杂度为 O(n) 的算法是否总是比最坏情况时间复杂度为 O(n^2) 的算法快?

javascript - 使用 jQuery 将轮播功能添加到选项卡

c++ - 在 C++ 中使用数组仅存储类的数据成员的名称

java - 需要 URL 的最高目录

r - 梯度下降算法错误 non-comformable arguments

python - 如何修复Python中的 "List Index out of range"?

python - 如何使用 split 函数在 python 中拆分单个列表的子列表?

c++ - random_shuffle 列表通过将它复制到一个 vector 然后返回

string - 如何在 Python 2 和 Python 3 中处理 subprocess.Popen 输出

string - 在 Julia 中反转字符串