gpt4 book ai didi

c++ - Qt - 在 200k 词字典中搜索字符串

转载 作者:行者123 更新时间:2023-11-30 04:15:28 27 4
gpt4 key购买 nike

所以,我有这个文本文件(用 Aspell 生成),里面有 200 000 个单词。它将被用于抓捕游戏,以检查这个词是否合法。这意味着,最有可能的是,在没有单词的地方会有很多检查,我想知道最有效的方法是什么。

  1. 每行检查文本文件行每次检查将进行 200 000 次迭代,因此这是我最后的选择。

  2. 获取 QList 中的所有单词,并使用 Qlist::contain() 函数(或 QList::indexOf() ,因为我认为我使用的是 Qt4.8)。不过我不知道这样做的效率如何,而且会占用大量内存。

  3. 使用哈希表。老实说,我不确定它是如何工作的,所以如果有人知道是否提供了 Qt 数据类型,我可以做一些研究。

还有其他有效的方法吗?目前倾向于 QList 方法,似乎最容易实现:)

最佳答案

您可以使用 std::unordered_set ,它通过哈希表执行查找。Qt 有自己的实现 QSet

不要使用 QList 或第一个文件遍历方法,因为这两种方法都比一次哈希表查找慢几个数量级。

关于c++ - Qt - 在 200k 词字典中搜索字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18278623/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com