密钥和值的数据结构同样“重要”

时间:2010-07-27 01:32:11

标签: language-agnostic data-structures performance mapping

所以,这可能是一个愚蠢的问题,但我有唯一ID到唯一值的映射。有时我想要某个ID的值,有时我想知道某个值的ID。我搜索的不仅仅是我修改了这个集合。我想知道是否有一个特殊的数据结构在这里是有意义的,或者我是否应该只保留集合的两个副本(它永远不会超大) - 一个由ID键入,一个由值键入。

谢谢!

2 个答案:

答案 0 :(得分:1)

类似Google的BiMap

答案 1 :(得分:1)

维护该集合的两个副本是规范的解决方案。

请注意,如果合适,这两个方向可以使用不同的集合类型(例如,具有不同散列函数的散列表,散列表和平衡树等)。