所以,这可能是一个愚蠢的问题,但我有唯一ID到唯一值的映射。有时我想要某个ID的值,有时我想知道某个值的ID。我搜索的不仅仅是我修改了这个集合。我想知道是否有一个特殊的数据结构在这里是有意义的,或者我是否应该只保留集合的两个副本(它永远不会超大) - 一个由ID键入,一个由值键入。
谢谢!
答案 0 :(得分:1)
类似Google的BiMap。
答案 1 :(得分:1)
维护该集合的两个副本是规范的解决方案。
请注意,如果合适,这两个方向可以使用不同的集合类型(例如,具有不同散列函数的散列表,散列表和平衡树等)。