解决方案


方法:哈希映射 HashMap

思路与算法

我们分析了算法需要考虑的3种情况: 当查询完全匹配时,当查询存在大小写不同的单词匹配时,当查询与出现元音错误的单词匹配时。

在所有 3 种情况下,我们都可以使用哈希表来查询答案。

  • 对于第一种情况(完全匹配),我们使用集合存放单词以有效地测试查询单词是否在该组中。
  • 对于第二种情况(大小写不同),我们使用一个哈希表,该哈希表将单词从其小写形式转换为原始单词(大小写正确的形式)。
  • 对于第三种情况(元音错误),我们使用一个哈希表,将单词从其小写形式(忽略元音的情况下)转换为原始单词。

该算法仅剩的要求是认真规划和仔细阅读问题。

复杂度分析

  • 时间复杂度:,其中 wordlistqueries 中内容的总数。

  • 空间复杂度: