我有一个包含元素对的数组arr
。我需要从该数组中找到最大的子集,这样,该子集中的每个成对元素都存在于数组arr
中。
e.g。让arr = [(a,b), (a,c), (a,d), (b,d)]
然后,最大的子集将是{a,b,d}
,因为子集中的所有可能的成对组合都存在于arr
中。
答案 0 :(得分:1)
这相当于在无向图中找到最大的完整组件(最大团队问题)的问题,其中每对代表图中的边。
这个问题是NP难的,所以没有比简单的强力搜索更好的方法了。这个实现要么微不足道要么太复杂,不能在这里发布,所以你必须自己解决这个问题。