双向多图等效数据结构

Ber*_*ice 7 java bidirectional multimap guava data-structures

我知道Guava内部有一个BiMultimap类,但没有外包代码.我需要一个双向的数据结构,即按键和按值查找,并接受重复.

这样的事情:(在我的情况下,值是唯一的,但两个值可以指向相同的键)

0 <-> 5
1 <-> 10
2 <-> 7
2 <-> 8
3 <-> 11
Run Code Online (Sandbox Code Playgroud)

我希望能够get(7)- >返回2get(2)返回[7, 8].那里有另一个库,它有一个我可以使用的数据结构吗?

如果没有,你有什么建议是处理这种情况的更好选择?将两个Multimaps记忆中的一个与另一个记录在一起并做坏事吗?

PS:我读过这个问题:Java中的双向多值映射,但考虑到它是在2011年,我想我会打开一个更近期的问题

Jen*_*der 1

你是什​​么意思

Guava内部有一个BiMultimap类但没有外包代码

实现的代码在这里。

我没有检查这是否是一个有效的实现,也没有检查它是否已发布,或者我是否只是在查看某种快照。一切都是公开的,所以你应该能够得到它。

快速浏览一下源代码,看起来该实现确实维护了两个 MultMap,这对于一般情况应该没问题。

  • 出发点是什么?双向多重映射的来源在哪里? (2认同)