gpt4 book ai didi

Java:多对一双向查找

转载 作者:搜寻专家 更新时间:2023-10-31 20:10:48 24 4
gpt4 key购买 nike

我有一个多对一关系的数据。我希望能够从两个方向查找数据。一个例子:

0 : a
1 : b
2 : b
3 : b
4 : c

get(0) --> a
get(1) --> b
get(a) --> 0
get(b) --> (1:3)

这有意义吗?可能吗?

最佳答案

绝对有可能。以下是添加项目的代码片段:

Map<Integer,String> forwardMap = new HashMap<>();
Map<String,Set<Integer>> reverseMap = new HashMap<>();

void add(Integer x, String y) {
forwardMap.put(x, y);
if (!reverseMap.containsKey(y))
reverseMap.put(y, new HashSet<Integer>());
reverseMap.get(y).add(x);
}

脚注:Apache Commons 有 BidiMap,Google Guava 有 BiMap,但这些似乎是一对一的 map ,不允许问题中提出的多对一情况。

关于Java:多对一双向查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29978184/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com