算法导论 附录B 思考题 B-1

(图着色问题)给定一个无向图G = (V, E),G的k着色是一个函数c:V → {0, 1, ..., k - 1},满足对于每条边(u, v) ∈ E,有c(u) ≠ c(v)。换句话说,数字0, 1, ..., k - 1代表了k种颜色,邻接的顶点不能具有相同颜色。

 

a. 证明:任意树都可以都是2可着色的。

b. 证明下列三条描述是等价的:

1. G是二分图

2. G是2可着色的

3. G没有奇数长度的环

c. 令d为图G中任意顶点的最大度数。证明:G可以用d + 1种颜色着色。

d. 证明:如果G有O(|V|)条边,那么G可以用O(\sqrt|V|)种颜色着色。

证明:

a、从结点考虑树的生成方式

即:新增一个结点并将该结点与原树中某个结点相连(由树的定义,原树新增结点后若要仍为树,需同时保持连通性和无环,因此新增结点只能与原树中一个结点连接)

因此,只需给新增结点染个与其连接结点不同的颜色即可让新树仍为2着色

b、

1 → 2 若G是二分图,则其顶点集V可被划分为两个集合V1和V2,使其所有边均位于V1集合和V2集合间,换言之,同一集合内无边,即结点均不相互连接。因此考虑将V1集合中的顶点染为一种颜色,V2集合中的顶点染为另一种颜色,说明G是2可着色的

2 → 3 考虑证明其逆反,若G中存在奇数长度的环,则G不可2着色。对奇数长度的环进行考虑,按2色对其相邻顶点依次染色,最后染色的顶点与第一个染色的顶点颜色相同,即不可2着色

3 → 1 考虑将没有奇数长度环的图G二分,对G中所有连通分量依次执行以下步骤:

        Ⅰ、取其中一顶点放入V1、V2任一集合内

        Ⅱ、将与上述顶点相连的顶点放入另一集合内

        Ⅲ、重复Ⅱ中过程

        Ⅳ、G中无奇数长度的环,因此不存在需将某一顶点放入两个集合中的矛盾

即可将G二分

c、感觉没啥好证的,因为对每个顶点来说,其度不超过d说明与其相连的顶点最多有d个,即使其颜色均不同,该顶点也能用第d+1种颜色进行着色

d、其实也算是比较好证的。不妨假设对于n条边而言,当其为两两相连的顶点集的边时,所需着色数最大,这个通过对顶点用归纳法可以证明,从而原命题成立。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值