应该选择哪种数据结构? [Android字典]

时间:2012-04-27 20:22:37

标签: java android algorithm dictionary

几个小时后我从互联网上搜索了信息,我仍然觉得不确定。我的问题是:我想在Android设备上实现一个字典(java base),我的要求是速度,然后是内存效率,但我无法决定使用哪种数据结构进行搜索。 我有一个数据结构列表,帮助我理解它们并选择一个:

  • 三元树
  • TRIE
  • Aho-Corasick树
  • [...你的建议DS ...]

如果有人能够在我们找到它之后指导我获得结果(很多字段:发音,平均值,例句......),那将会非常友好吗?我们会将这些信息保存在另一个数据文件中吗?

3 个答案:

答案 0 :(得分:1)

在搜索数据结构之前,您需要列出设计的主要问题。这本词典提供什么功能?它的主要特征是什么?快速搜索?空间紧凑?插入/删除友好?交叉引用友好?只有当你掌握了这些内容时,你才能衡量候选人结构的优秀程度。

答案 1 :(得分:0)

它可以通过多种方式实现,其中一种是True。路由由数字表示,节点指向单词集合。树的用法解释为here

答案 2 :(得分:0)

同意Hunter Mcmillen的评论。如果你需要像常规字典那样按字母顺序排序,你可以使用Java TreeMap这是一个SortedMap。