📅  最后修改于: 2023-12-03 15:28:09.084000             🧑  作者: Mango
Clique Decision 问题是一个图论问题,给定一个无向图 G 和一个正整数 k,判断 G 中是否存在一个大小为 k 的团(图中 k 个顶点两两之间都有边相连)。团是一个完全子图,即其中所有顶点都相互连通。
要证明 Clique Decision 问题是 NP-Complete,需要证明两部分内容:
判断 Clique Decision 问题的正确性可以通过穷举法实现,时间复杂度为 O(n^k)。因此,可以在多项式时间内验证 Clique Decision 问题的解是正确的,即 Clique Decision 问题是 NP 问题。
我们需要找到另一个已知的 NP-hard 问题并证明其可以在多项式时间内归约到 Clique Decision 问题。
我们选择 Vertex Cover 问题。Vertex Cover 问题是给定一个无向图 G 和一个正整数 k,判断 G 是否存在一个大小为 k 的顶点集,使得每一条边都至少有一个端点在这个顶点集中。Vertex Cover 问题是 NP-hard 问题。
接下来证明 Vertex Cover 问题可以在多项式时间内归约到 Clique Decision 问题。具体步骤如下:
上述步骤的时间复杂度为O(n^2),可以在多项式时间内完成。现在证明 (G, k) 是一个 Vertex Cover 问题的解,当且仅当 (G', k) 是一个 Clique Decision 问题的解。
如果 (G, k) 是一个 Vertex Cover 问题的解,则 G 中至少存在 k 个顶点,使得每一条边都至少有一个端点在这些顶点中。因为 G' 中所有的边都是 G 中不存在的边,因此在 G' 中不存在大小为 k 的团。
如果 (G, k) 不是一个 Vertex Cover 问题的解,则 G 中最多存在 k-1 个顶点,使得每一条边都至少有一个端点在这些顶点中。在 G' 中这些顶点之间一定存在大小为 k 的团,因为对于任意两个不相邻的顶点,它们在 G 中至少有一个公共邻居,而在 G' 中这个公共邻居同时是它们之间的边缘顶点,它们可以组成一个大小为 k 的团。
因此,我们证明了 Vertex Cover 问题可以在多项式时间内归约到 Clique Decision 问题,并且可以在多项式时间内将 Clique Decision 问题的解转换为 Vertex Cover 问题的解。由于 Vertex Cover 问题是 NP-hard 问题,因此 Clique Decision 问题也是 NP-hard 问题。
综上所述,我们证明了 Clique Decision 问题是 NP-Complete 问题。
参考文献: