我希望从只有一个对应键的 Java 键/值对(具有一对多映射的映射)中检索值,而不循环遍历映射中的所有值并将其转换为 O(n )
复杂性。
键/值数据结构如下:
K1 --> V1, V2
K2 --> V1, V2, V3
K3 --> V1
K4 -->
K5 --> V4, V2
如果有人对此有任何建议,或者是否可以在时间复杂度方面做得更好,我们将不胜感激。
最佳答案
在 google 的 guava 中有一个非常好的 BiMap 类,您可以在其中查找键和值(它由两个映射支持)。
http://code.google.com/p/guava-libraries/
编辑:澄清后。我认为我的答案没有太大变化。 Guava 也有非常好的 MultiMap 接口(interface)(以及它的几个实现),您很可能将其用于您的目的。
关于java - 在键/值对中仅使用一个键有效地查找值,时间复杂度明智 : Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6528614/