此集合在逻辑上作为映射起作用,但允许按其前缀查找元素。它由嵌套的Maps
组成,其中每个嵌套的映射对应于与键的下一个标记匹配的元素。
例如:
让我们以bar
作为映射键。
让我们将bar
int“子键”标记为:b
,a
,r
。然后我们将使用以下方法(伪代码)放入value
Map<String,Value or Map>
中获取b
,如果不存在,则放置新的Map<String,Value or Map
a
,如果不存在,请放置新的Map<String,Value or Map>
r
下设置或替换值检索类似(伪代码)
b
桶a
个存储桶r
中取值r
这样的集合如何称呼?我将其称为GraphMap或BucketGraph。但是专有名称是什么?
答案 0 :(得分:4)
您所描述的内容听起来很像Trie, or Prefix Tree。它可用于根据单词的单个字符,句子中的单词或其他类型的“后继分解”将字符串或其他对象分类为存储桶(不确定 是否正确)学期...)。
答案 1 :(得分:2)
您很有可能搜索Trie,也称为Prefix or Digital Tree。第一个链接会将您重定向到Apache Commons库,该库实现了这种树。