证明使用邻接矩阵进行二部测试具有Ω(n^2)

问题描述

所以在我的一次讲座中,我发现了以下证据:

???????:??? 算法,用于确定一个图是否是二部图 其输入无向图? = (?,?) 表示 作为一个?×?邻接矩阵,运行时间为Ω(?^2)

我们假设一个算法 ALG 测试二分性(返回真或假)。我们还假设我们有一个图 ?0 = (?,?0),其中 ? = {1,2,…,?} 和 ?0 = { 1,? : 2 ≤ ? ≤ ?}(因为这是一颗星,所以它是一个二部图)

在证明中有一个步骤说: “对于给定的算法 ALG,我们将构建另一个图 ?1 st:如果 ALG 对 ?0 的邻接矩阵 那么 ALG 就不会区分 ?0 和 ?1,并且?1 不是二分的。”

我的问题是 (n-1)C2 访问是什么意思。是说例如,如果我们有不同的 V = {A,B,C,D},那么 ALG 将查看除 D 和其他节点之间的节点对之外的所有节点对?

对不起,如果这不清楚,这个证明真的让我感到困惑。

解决方法

G0 是一个 n 顶点 star graph。它是二部的,但如果你向它添加任何其他边,结果图就不是。有 n−1 选择 2 = (n−1)(n−2)/2 = Ω(n2) 我们可以添加的其他边。每一个正确的算法都必须检查每一个,以验证 G0 是二部的。