【发布时间】:2017-02-13 19:24:59
【问题描述】:
我想将集合与公共元素合并。例如
input = set([frozenset([1,2,3,4]), frozenset([3,4,5,6,7,8]), frozenset([1,1000]),
frozenset([100, 200]), frozenset([100, 300, 400])])
结果:
set([frozenset([1,2,3,4,5,6,7,8, 1000]), frozenset([100,200,300,400])])
什么是实现这一目标的有效方法?
【问题讨论】:
-
@AustinHastings 使用集合,此操作更快、更容易。我已经发布了一个合适的策略。
-
@TemporalWolf 解决方案涉及集合,对于列表、元组等也是如此。您想将一堆集合合并在一起吗?构建集。
-
连接组件方法比蛮力的全对
set.union/set.intersection算法效率更高。