什么是操纵数千个单词列表的充分方法

时间:2015-11-14 03:42:02

标签: c++ algorithm words

我试图设计这样一个应用程序来操作存储在txt文件中的数千个单词的列表,以执行以下任务,

1 - 随机拿起一些单词。

2 - 检查用户输入的某些单词是否实际在列表中。

3 - 从txt文件中检索整个列表并临时存储以供后续操作。

我不要求伪代码实现。我正在寻找足够的方法来处理大量的单词。目前,我可能会使用字符串向量,但搜索数千个单词需要一些时间。当然,必须有一些策略来应对这类任务,但是,由于我的背景不是计算机科学,我不知道我去哪个方向。欢迎任何建议。

2 个答案:

答案 0 :(得分:1)

字符串向量适用于此问题。只需对它们进行排序,然后您就可以使用二进制搜索在列表中查找字符串。

答案 1 :(得分:0)

Radix trees是搜索匹配单词列表的好方法。减少存储空间,但您必须有一些自定义代码来获取和放置列表中的单词。除非每次从文本文件加载时重新创建树,否则文本文件不一定容易阅读。 Here's an implementation I committed to on GitHub(我甚至不记得此时的源材料)可能对你有所帮助。