图论(2)——道路与回路

文章目录

  • 一、 道路与回路
    • 有向道路/有向回路
    • 无向图的道路及道路的长度
    • 联通图
      • 定义
      • 定理
      • 极长初级道路
      • 扩大初级道路法
    • 二分图
      • 定义
      • 定理
    • 图的性质
    • 两点间距离,割点,割边
  • 二、欧拉道路与回路
    • 定义
    • 欧拉定理
    • 应用
  • 三、哈密顿道路与回路
    • 定义(哈密顿图)
    • 回路-引理
    • 哈密顿道路与回路-充分性定理1
    • 闭合图
    • 哈密顿道路与回路-充分性定理2
    • 例子
    • 哈密顿道路与回路-必要性定理

一、 道路与回路

有向道路/有向回路

  • 如果P中的边没有重复出现,则分别称为简单 (simple)有向道路和简单有向回路
  • 进而, 如果P中结点也不重复出现, 又分别称它们是初级(primary)有向道路和初级有向回路, 简称为路和回路
  • 显然,初级有向道路path(回路circuit)一定是简单有向道路(回路)

我的理解:这里指结点不重复出现,指的是1个结点不作为起点/终点两次及以上

图论(2)——道路与回路_第1张图片

无向图的道路及道路的长度

无向图G=(V, E)中,若点边交替序列 P = ( v i 1 , e i 1 , v i 2 , e i 2 , … , e i q − 1 , v i q ) P=(v_{i1}, e_{i1}, v_{i2}, e_{i2}, …, e_{iq-1}, v_{iq}) P=(vi1,ei1,vi2,ei2,,eiq1,viq)满足 v i k , v i k + 1 是 e i k v_{ik}, v_{ik+1}是e_{ik} vik,vik+1eik的两个端点, 则称P 是G中的一条链或道路. 如果 v i q = v i 1 v_{iq}=v_{i1} viq=vi1, 则称P是G中的一 个圈或回路,其长度为边数(q-1)

如果P中没有重复出现的边, 称之为简单道路或简单回路,
若其中结点也不重复,又称之为初级道路或初级回路 ^155bcf

联通图

  • G是无向图: 若G的任意两结点之间都存在道路, 就称G是连通图, 否则称为非连通图
  • 如果G是有向图, 不考虑其边的方向, 即视为无向图; 若它是连通的, 则称G是连通图
  • 若连通子图H不是G的任何连通子图的真子图, 则称H是G的极大连通子图或称连通支
  • 显然G的每个连通支都是它的导出子图

图论(2)——道路与回路_第2张图片

定义

设C是简单图G中含结点数大于3的一个初级回路,如果结点vi和vj在C中不相邻,而边 (vi,vj) ∈ \in E(G),则称(vi,vj)是C的一条弦。该回路也称为带弦回路(chordal circuit)。

定理

若对简单图G中每一个vk ∈ \in V(G),都有d(vk)≥3, 则G中必含带弦的回路。
证明: 在G中构造一条极长(不可外延)的初级道路 (不可内延) P = ( v 0 , e i 1 , v 1 , e i 2 , … , v l − 1 , e i l , v l ) P=(v_0, e_{i1}, v_1, e_{i2}, …, v_{l-1}, e_{il}, v_l) P=(v0,ei1,v1,ei2,,vl1,eil,vl)
由于P是 极长的初级道路,所以v0和vl的邻接点都在该道路P上。
由已知条件,d( v k v_k vk)≥3,不妨设Γ( v 0 v_0 v0)={ v 1 , v i j , v i k , … v_1, v_{ij}, v_{ik}, … v1,vij,vik,}, 其 中1 v 0 , v 1 , … , v i k , v 0 v_0, v_1, …, v_{ik}, v_0 v0,v1,,vik,v0)是一条初级回路,而(v0, v i j v_{ij} vij)就是该回路中的一条弦。
图论(2)——道路与回路_第3张图片

极长初级道路

在无向简单图G=中, E≠∅, 设Γ1=v0,v1,…,vl为G中一条初级道路,若路径的两个端点v0和vl 不与初级道路本身以外的任何结点 相邻, 这样的初级道路称为极长初级道路
(有向图中, 初级道路起点的前驱, 终点的后继, 都在初级道路本身上)

扩大初级道路法

任何一条初级道路, 如果不是极长初级道路, 则至少有一个端点与初级道路本身以外的结点相邻, 则将该结点及其相关联的边扩到新的初级道路中来, 得到更新的初级道路。继续上述过程, 直到变成极长初级道路为止.

二分图

定义

设G=(V,E)是无向图,如果V(G)可以划分为子 集X和Y,使得对所有的e=(u,v) ∈ \in E(G), 都有u 和v分属于X和Y,则称G是二分图。
图论(2)——道路与回路_第4张图片

定理

  • 含有K3子图的图一定不是二分图(鸽巢原理)
  • Kn不是二分图(n>=3)
    K3: 其中一条边一定落在X或Y中

图的性质

  • 证明:如果二分图G中存在回路,则它们都是 由偶数条边组成的。
    设C是二分图G的任一条回路,不妨设v0 ∈ \in X 是C的始点,由于G是二分图,所以沿回路C必须经 过偶数条边才能达到某结点vi ∈ \in X,因而只有经过偶 数条边才能回到v0

  • 证明:设G是简单图,当m>(n-1)(n-2)/2时,G 是连通图。
    证明: G G G 是非连通图,则它至少含有 2 个连通分支。设分别是 G 1 = ( V 1 , E 1 ) G_1=(V_1, E_1) G1=(V1,E1), G 2 = ( V 2 , E 2 ) G_2=(V_2, E_2) G2=(V2,E2),其中
    ∣ V 1 ( G 1 ) ∣ = n 1 |V_1(G_1)|=n_1 V1(G1)=n1, ∣ V 2 ( G 2 ) ∣ = n 2 |V_2(G_2)|=n_2 V2(G2)=n2, n 1 + n 2 = n n_1 + n_2 = n n1+n2=n,
    ∣ E 1 ( G 1 ) ∣ + ∣ E 2 ( G 2 ) ∣ = m |E_1(G_1)| + |E_2(G_2)| = m E1(G1)+E2(G2)=m
    由于 G G G 是简单图,因此
    1 ≤ n 1 ≤ n − 1 1 \leq n_1 \leq n-1 1n1n1, 1 ≤ n 2 ≤ n − 1 1 \leq n_2 \leq n-1 1n2n1

    所以
    n 1 ( n 1 − 1 ) / 2 + n 2 ( n 2 − 1 ) / 2 ≤ ( n − 1 ) ( n 1 − 1 ) / 2 + ( n − 1 ) ( n 2 − 1 ) / 2 = ( n − 1 ) ( n 1 + n 2 − 2 ) / 2 = ( n − 1 ) ( n − 2 ) / 2 \begin{align*} & n_1(n_1-1)/2 + n_2(n_2-1)/2 \\ & \leq (n-1)(n_1-1)/2 + (n-1)(n_2-1)/2 \\ & = (n-1)(n_1+n_2-2)/2 \\ & = (n-1)(n-2)/2 \end{align*} n1(n11)/2+n2(n21)/2(n1)(n11)/2+(n1)(n21)/2=(n1)(n1+n22)/2=(n1)(n2)/2
    与已知条件 m > n ( n − 1 ) / 2 m > n(n-1)/2 m>n(n1)/2 矛盾,故 G G G 是连通图。

  • n个结点的连通图的边数一定≥n-1

两点间距离,割点,割边

  • 两点间距离:若u与v连通,则u与v之间最短道路长度为u与v的距离
  • 割点:去掉该点(及关联边后),图的连通分支数上升
  • 割边:去掉该边后,图的连通分支数上升

二、欧拉道路与回路

定义

无向连通图G=(V, E)中的一条经过所有边的简单回路(道路)称为G的欧拉回路(道路)
包含欧拉回路的图为欧拉图。

欧拉定理

定理2.3.1: 无向连通图G存在欧拉回路的充要条件是G中各结点的度都是偶数

必要性:若G中有欧拉回路C,则C过每条边一次且 仅一次.对任一结点v来说,如果C经过ei进入v,则 一定通过另一条边ej从v离开.因此结点v的度是偶数.

充分性:由于G是有穷图,因此可以断定,从G的任一结点v0出发一定存在G的一条简单回路C. 这是因为各结点的度都是偶数,所以这条简单道路不可能停留在v0以外的某个点,(有进有出)而不能再向前延伸以致构成回路C
如果E(G)=C, 则C就是欧拉回路,充分性得证。
否则在G中删去C的各边,得到G1=G-C。 G1可能是非连通图,但是每个结点的度保持为偶数。这时,G1中一定存在某个度非零的结点vi, 同时vi也是C 中的结点。否则C的结点与G1的结点之间无边相连, 与G是连通图矛盾。
同理,从vi出发,G1中vi所在连通分支内存在一条简单回路C1。(递归分析)
显然,C∪C1仍然是G的一条简单回路,但它包括的边数比C多。 继续以上构造方法,最终有简单回路C’= C∪C1∪…∪Ck ,它包含了G的全部边,即C’是G 的一条欧拉回路

也可以使用数学归纳法

构造欧拉回路:
方法同上证明: 先找一个小回路,再从小回路中能与外界联系的点出发继续找回路.

图论(2)——道路与回路_第5张图片

推论2.3.1: 若无向连通图G中只有2个度为奇的结点,则G存在欧拉道路.
证明:设vi和vj是两个度为奇数的结点. 作G’=G+(vi, vj), 则G’中各点的度都是偶数. 根据欧拉定理G’有欧拉回路, 它含边(vi, vj), 删去该边, 得到一条从vi到vj的简单道路, 它恰好经过了G的所有边, 亦即是一条欧拉道路

推论2.3.2: 若有向连通图G中各结点的正、负度相等, 则G 存在有向欧拉道路
证明类似于定理1

定理2.3.2: 设连通图G=(V,E)有k个度为奇数的结点, 那么E(G)可以划分成k/2条简单道路。

证明:由性质1.1.2,k是偶数。在这k个结点间增添 k/2条边,使每个结点都与其中一条边关联,得到 G’,那么G’中各结点的度都为偶数。 由定理1,G’包含一个欧拉回路C。而新添的 k/2条边在C上都不相邻。所以删去这些边后,我 们就得到由E(G)划分成的k/2条简单道路。

应用

图论(2)——道路与回路_第6张图片

解答:如果从状态 a 1 a 2 a 3 a 4 a_1a_2a_3a_4 a1a2a3a4( a i a_i ai=0或1)逆时针方向旋转一个扇面,那么新的输出是 a 2 a 3 a 4 a 5 a_2a_3a_4a_5 a2a3a4a5,其 中有三位数字不变。
因此可以用8个结点表示 从000到111这8个二进制数,这样从结点( a i + 1 a i a i + 1 a_{i+1}a_ia_{i+1} ai+1aiai+1)可以到达结点( a i a i + 1 0 a_ia_{i+1}0 aiai+10)或( a i a i + 1 1 a_ia_{i+1}1 aiai+11),其输出分别是( a i − 1 a i a i + 1 0 a_{i-1}a_ia_{i+1}0 ai1aiai+10)和( a i − 1 a i a i + 1 1 a_{i-1}a_ia_{i+1}1 ai1aiai+11),这样可以得到下图。
图论(2)——道路与回路_第7张图片

该图是有向连通图,共有16条边,且每结点的正、负度相等。有推论2.3.2,它存在有向欧拉回路。其中任一条都是原问题的解,比如(0000 1010 0110 1111)就是一个方案。 0000, 0001, 0010, 0101, 1010, 0100, 1001, 0011, 0110, 1101, 1011, 0111, 1111, 1110, 1100, 1000.

三、哈密顿道路与回路

定义(哈密顿图)

  • 无向图的一条过全部结点的初级回路(道路)称为G 的哈密顿回路(道路),简记为H回路(道路)
  • 哈密顿回路是初级回路,因此它与欧拉回路不同。当然在特殊情况下,G的哈密顿回路恰好也是其欧拉回路
  • 判定H回路存在性问题一般是针对简单图的(删去重边与自环无影响)

回路-引理

引理*: 设P=(v1, v2, …, vl)是图G中一条极长的初级道路(即v1和vl的邻点都在P上)
而且d(v1)+d(vl)≥l,
则G中一定存在经过结点v1, v2, …, vl的初级回路。
Hint: p ∧ q → r ⇒ p ∧ ¬ r → ¬ q p \wedge q\to r \Rightarrow p \wedge \neg r\to \neg q pqrp¬r¬q
图论(2)——道路与回路_第8张图片

上面 d ( v l ) ≤ l − k − 1 d(v_l)\leq l-k-1 d(vl)lk1的推导过程: 对于与v1相连的每一个结点(vp), vl都不能与其前一个结点(vp-1)相邻,共有k个这样的结点,故l要减去k

哈密顿道路与回路-充分性定理1

定理2.4.1: 如果简单图G的任意两不相邻结点vi, vj之间恒有 d(vi)+d(vj)≥n-1 则G中存在哈密顿道路

证明:
先证G是连通图。若G非连通,则至少分为2个连通支H1, H2,其结点数分别为n1, n2。从中各任取 一个结点vi, vj,则 d(vi)≤n1-1, d(vj)≤n2-1。 故d(vi)+d(vj)

以下证G存在H道路。设P=(vi1, vi2, …, vil)是G中一 条极长的初级道路,即vi1和vil的邻点都在P上。此时,

  1. 若l=n, P即为一条H道路
  2. 若l

由于 G G G 连通,所以存在 C C C 之外的结点 v t v_t vt C C C 中某点 v i q v_{iq} viq 相邻。删去 ( v i q − 1 , v i q ) (v_{iq-1}, v_{iq}) (viq1,viq),则 P ′ = ( v t , v i q , … , v i p − 1 , v i l , … , v i p , v i 1 , … , v i q − 1 ) P'=(v_t, v_{iq}, \ldots, v_{ip-1}, v_{il}, \ldots, v_{ip}, v_{i1}, \ldots, v_{iq-1}) P=(vt,viq,,vip1,vil,,vip,vi1,,viq1) G G G 中一条比 P P P 更长的初级道路。以 P ′ P' P 的两个端点 v t v_t vt v i q − 1 v_{iq-1} viq1 继续扩充,可得到一条新的极长的初级道路。重复上述过程,因为 G G G 是有穷图,所以最终得到的初级道路一定包含了 G G G 的全部结点,即是 H H H 道路。

图论(2)——道路与回路_第9张图片

推论2.4.1(ORE)
若简单图G(n>=3)的任意两个不相临结点vi和vj之间恒有 d(vi)+d(vj)≥n 则G中存在哈密顿回路
证明:由定理2.4.1,G有H道路。设其两端点是v1和vn,若G不存在H回路,根据 回路-引理 证明,一定有:若d(v1)=k, 则d(vn)≤n-k-1, 那么d(v1)+d(vn)≤n-1

推论2.4.2(DIRAC)
若简单图G(n>=3)中每个结点的度都大于等于n/2,则G有H 回路
证明:由推论2.4.1可得。

闭合图

图论(2)——道路与回路_第10张图片
引理2.4.1 简单图G的闭合图C(G)是唯一的。
证明:设C1(G)和C2(G)是G的两个闭合图,L1={e1, e2, …, er}, L2={a1, a2, …,as}分别是C1(G)和C2(G)中新加入边的集合,可以证明L1=L2, 即C1(G)=C2(G)。
如若不然,不失一般性,设 e i + 1 = ( u , v ) ∈ L 1 e_{i+1}=(u,v)\in L1 ei+1=(u,v)L1是构造C1(G)时第一条不属于L2的边,亦即 e i + 1 ∉ L 2 e_{i+1}\notin L2 ei+1/L2
令H=G∪{e1, e2, …, ei},这时H是C1(G)也是C2(G)的 子图。
由于构造C1(G)时要加入 e i + 1 e_{i+1} ei+1,显然H中满足d(u)+d(v)≥n, 但是(u,v) ∉ \notin /C2(G),与C2(G)是G的闭合图矛盾。

引理2.4.2 设G是简单图, vi,vj是不相邻结点,且满足 d(vi)+d(vj)≥n. 则G存在H回路的充要条件是G+(vi, vj) 有H回路
证明:必要性显然。现证充分性。假定G不存在H回路,则G+(vi,vj)的H回路一定经过边(vi,vj),删去(vi,vj), 即G中存在一条以vi,vj为端点的H道路,这时由 回路-引理 知必有 d(vi)+d(vj)

哈密顿道路与回路-充分性定理2

定理2.4.2 简单图G存在哈密顿回路的 充要条件 是其闭合图存在哈密顿回路
闭合图的性质:任意两个不相邻结点,度之和>=n
证明:设C(G)=G∪L1, L1={e1, e2, …, et}, 由引理2.4.1和引理2.4.2, G有H回路 ⇔ \Leftrightarrow G+e1有H回路 ⇔ \Leftrightarrow ⇔ \Leftrightarrow G∪L1有H回路.
由于C(G)是唯一的,故定理得证。

推论2.4.3 设G(n≥3)是简单图, 若C(G)是完全图Kn, G有H回路 说明:d(vi)+d(vj)=(n-1)+(n-1)=n+(n-2)

例子

举例:设n(≥3)个人中,任两个人合在一起都认识其余n-2个人。证明这n个人可以排成一队,使相邻者都互相认识。
证明:每个人用一个结点表示,相互认识则用边连接相应的结点,于 是得到简单图G。若G中有H道路,则问题得证。 由已知条件,对任意两点vi, vj ∈ \in V(G),都有d(vi)+d(vj)≥n-2。此时,
(1)若vi和vj相识,即(vi,vj) ∈ \in E(G), 则d(vi)+d(vj)≥n
(2) 若vi和vj不相识,必存在vk ∈ \in V(G),满足(vi,vk), (vj,vk) ∈ \in E(G)。否则, 设(vi,vk) ∉ \notin /E(G),就出现vk, vj合在一起不认识vi,与已知矛盾。因此也有d(vi)+d(vj)≥n-1 综上由 充分性定理1,G中存在H道路

哈密顿道路与回路-必要性定理

必要性定理: 若G是H-图(此处特指H回路),则对于V的每个非空真子集S,均有W(G-S)≤|S|其中 W(G-S) 是G-S中连通分支数
证明:设C是G的H-回路,则对于V的每个非空真子集S均有W(C-S)≤|S|.(充分性定理2)
而C-S是G-S的生成子图,故W(G-S)≤W(C-S),因此W(G-S)≤|S|。

你可能感兴趣的:(数据结构,图论,笔记,算法)