我需要在数据结构中存储几百个字符串。每个字符串都有两个与之关联的字段,例如单词含义及其来源。我可以以任何方式存储单词,比如排序、反向排序或任何你喜欢的方式。
我只需要尽快在字典中搜索一个字符串并获取两个相关字段。如果可能的话,我希望我的搜索比二进制搜索更好。
我正在使用 Java。我应该使用哪种数据结构
或集合类
?
注意:我不想在这里使用数据库。
最佳答案
您可以使用 HashMap<String,MyDataObject>
- 这将是最快和最简单的使用方式。
平均寻道时间为 O(|S|)
, 其中|S|
是字符串的长度。
您也可以尝试使用 trie或 radix tree , 但请确保您要通过分析 HashMap
来为此付出时间解决方案,然后再开始处理。
关于java - 快速搜索字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12561061/