我想用 Java 创建一个包含大约 10 000 个单词对的字典,但我不知道应该使用什么数据结构。如果我的字典中有一个单词,例如 because
,如果我只搜索bec
,我希望程序找到它。 。如果我有一个像 the end
这样的短语如果我搜索 th
我想找到它或en
.
我试过ArrayList
,但搜索速度相当慢。我不想使用实现 Map
的类接口(interface),因为它们只能为一个键存储一个值,所以我无法按照上面的描述进行搜索。
这个答案列出了字典的一些数据结构,但我认为它们对我来说不是最好的:Best data structure for implementing a dictionary?
最佳答案
您正在搜索的是 trie .
由于java框架似乎没有一个实现,请看一下this thread对于可能的库和解决方案:
关于java - 我的字典应该使用什么数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34041013/