【发布时间】:2013-04-18 04:13:43
【问题描述】:
我怎样才能reduce 和Map<Integer, List<Integer>>?
让reduce'd 映射是一个映射,其中 List<Integer> 的每个 Integer 值都是唯一的且不重复。
例子:
地图A:
0 --> (0)
1 --> (1, 2)
2 --> (2, 1)
将简化为:
0 --> (0)
1 --> (1, 2)
或
0 --> (0)
2 --> (2, 1)
请注意,删除键 1 或 2 都是可以接受的,因为它会生成 reduced 映射。
编辑:当一个元素映射到自身时,它应该保持独立,例如0 --> 0。但是,当多个值具有共同的整数时,它们应该被合并。
【问题讨论】:
-
你将如何决定删除哪些键和保留哪些键?
-
好吧,在上面的示例中,key =
1或2可能已被删除。让我编辑问题。key删除无关紧要,重要的是唯一性和非重复值。 P.S 为什么要关闭? -
0 --> (0) 1 --> (1, 2) 2 --> (2, 1, 3) 会发生什么
-
@faisal,
reduced映射将是:0 --> 0, 1 --> (1,2,3)或0 --> 0, 2 --> (2,1,3)值的顺序无关紧要。重要的是唯一性和非重复性。 -
对于第一个选项 0 --> 0, 1 --> (1,2,3) 为什么 3 是 list1 的一部分,如果是这样,为什么 ans 不是 0 --> (0 ,1,2,3)