第五部分 图论
本部分主要内容
图的基本概念
欧拉图、哈密顿图
树
平面图
支配集、覆盖集、独立集、匹配与着色
第十四章 图的基本概念
主要内容
图
通路与回路
图的连通性
图的矩阵表示
图的运算 预备知识
多重集合——元素可以重复出现的集合
无序集—— AB={(x,y) | xAyB}
14.1 图
定义 14.1 无向图 G = <V,E>, 其中
(1) V 为顶点集,元素称为顶点
(2) E 为 VV 的多重集,其元素称为无向边,简称边
实例 设
V = {v1, v2, …,v5},
E = {(v1,v1), (v1,v2), (v2,v3), (v2,v3), (v2,v5), (v1,v5), (v4,v5)}
则 G = <V,E> 为一无向图
有向图
定义 14.2 有向图 D=<V,E>, 只需注意 E 是 VV 的多重子集 图 2 表示的是一个有向图,试写出它的 V 和 E
注意:图的数学定义与图形表示,在同构(待叙)的意义下 是一一对应的
相关概念
1. 图
① 可用 G 泛指图(无向的或有向的)
② V(G), E(G), V(D), E(D) ③ n 阶图
2. 有限图
3. n 阶零图与平凡图
4. 空图——
5. 用 ek 表示无向边或有向边 6. 顶点与边的关联关系
① 关联、关联次数 ② 环
③ 孤立点
7. 顶点之间的相邻与邻接关系
} { ) ( )
(
} )
( )
, ( ) (
| { ) (
v v
N v
N v
v u G
E v
u G
V u
u v
N v
的闭邻域
的邻域
} )
(
| { )
(v e e E G e与v关联
I
} { ) ( )
(
) ( )
( )
(
} )
( ,
) (
| { ) (
} )
( ,
) (
| { ) (
v v
N v
N v
v v
v N v
v u D
E v
u D
V u
u v
v
v u D
E u
v D
V u
u v
v
D D
D D
D D D
的闭邻域 的邻域
的先驱元集 的后继元集
8. 邻域与关联集
① vV(G) (G 为无向图 )
v 的关联集
② vV(D) (D 为有向图 )
9. 标定图与非标定图
10. 基图
相关概念
多重图与简单图
定义 14.3
(1) 无向图中的平行边及重数
(2) 有向图中的平行边及重数(注意方向性)
(3) 多重图 (4) 简单图
在定义 14.3 中定义的简单图是极其重要的概念
顶点的度数
定义 14.4
(1) 设 G=<V,E> 为无向图 , vV, d(v)——v 的度数 , 简称 度
(2) 设 D=<V,E> 为有向图 , vV, d+(v)——v 的出度
d(v)——v 的入度
d(v)——v 的度或度数 (3) (G), (G)
(4) +(D), +(D), (D), (D), (D), (D)
(5) 奇顶点度与偶度顶点
m v
d
n i
i) 2
(
1
m v
d v
d m
v d
n
i
i n
i
i n
i
i
1 1
1
) ( )
( ,
2 )
( 且
定理 14.1 设 G=<V,E> 为任意无向图, V={v1,v2,…,vn}, |E|=m, 则
证 G 中每条边 ( 包括环 ) 均有两个端点,所以在计算 G 中各 顶点度数之和时,每条边均提供 2 度, m 条边共提供 2m 度 .
本定理的证明类似于定理 14.1
握手定理
定理 14.2 设 D=<V,E> 为任意有向图, V={v1,v2,…,vn}, |E|=m, 则
握手定理推论
推论 任何图 ( 无向或有向 ) 中,奇度顶点的个数是偶数 . 证 设 G=<V,E> 为任意图,令
V1={v | vV d(v) 为奇数 } V2={v | vV d(v) 为偶数 }
则 V1V2=V, V1V2= ,由握手定理可知
由于 2m, 均为偶数,所以 为偶数,但因为 V1中 顶点度数为奇数,所以 |V1| 必为偶数 .
2 1
) ( )
( )
( 2
V v V
v V
v
v d v
d v
d m
2) (
V v
v
d
1
) (
V v
v d
例 1 无向图 G 有 16 条边, 3 个 4 度顶点, 4 个 3 度顶点
,其余顶点度数均小于 3 ,问 G 的阶数 n 为几?
解 本题的关键是应用握手定理 .
设除 3 度与 4 度顶点外,还有 x 个顶点 v1, v2, …, vx , 则
d(vi) 2 , i =1, 2, …, x , 于是得不等式
32 24+2x
得 x 4, 阶数 n 4+4+3=11.
握手定理应用
图的度数列
1 . V={v1, v2, …, vn} 为无向图 G 的顶点集,称 d(v1), d(v2), …, d (vn) 为 G 的度数列
2. V={v1, v2, …, vn} 为有向图 D 的顶点集,
D 的度数列: d(v1), d(v2), …, d(vn) D 的出度列: d+(v1), d+(v2), …, d+(vn) D 的入度列: d(v1), d(v2), …, d(vn)
3. 非负整数列 d=(d1, d2, …, dn) 是可图化的,是可简单图化的 . 易知: (2, 4, 6, 8, 10) , (1, 3, 3, 3, 4) 是可图化的,后者又是可 简单图化的,而 (2, 2, 3, 4, 5) , (3, 3, 3, 4) 都不是可简单图化 的,特别是后者也不是可图化的
图的同构
定义 14.5 设 G1=<V1,E1>, G2=<V2,E2> 为两个无向图 ( 两个有向 图 ) ,若存在双射函数 f:V1V2, 对于 vi,vjV1,
(vi,vj)E1 当且仅当 (f(vi),f(vj))E2
( <vi,vj>E1 当且仅当 <f(vi),f(vj)>E2 )
并且 , (vi,vj) ( <vi,vj> )与 (f(vi),f(vj)) ( <f(vi),f(vj)> )的重数相 同,则称 G1与 G2是同构的,记作 G1G2.
图之间的同构关系具有自反性、对称性和传递性 .
能找到多条同构的必要条件,但它们全不是充分条件:
① 边数相同,顶点数相同 ; ② 度数列相同 ;
③ 对应顶点的关联集及邻域的元素个数相同,等等 若破坏必要条件,则两图不同构
判断两个图同构是个难题
图同构的实例
图中 (1) 与 (2) 的度数列相同,它们同构吗?为什么?
(1) (2) (3) (4)
图中, (1) 与 (2) 不同构(度数列不同), (3) 与 (4) 也不同构 .
(1) (2)
n 阶完全图与竞赛图
定义 14.6
(1) n (n1) 阶无向完全图——每个顶点与其余顶点均相邻的
无向简单图,记作 Kn. 简单性质:边数
(2) n (n1) 阶有向完全图——每对顶点之间均有两条方向相
反的有向边的有向简单图 . 简单性质:
(3) n (n1) 阶竞赛图——基图为 Kn的有向简单图 .
简单性质:边数
1 2 ,
) 1
(
n n n
m
1 ),
1 (
2 ),
1
(
n n n n
m
1 2 ,
) 1
(
n n n
m
n 阶 k 正则图
(1) 为 K5 , (2) 为 3 阶有向完全图, (3) 为 4 阶竞赛 图 .
(1) (2) (3)
定义 14.7 n 阶 k 正则图—— ==k 的无向简单图 简单性质:边数(由握手定理得)
Kn 是 n1 正则图,
彼得松图(见书上图 14.3(1) 所示,记住它)
2 m nk
子图
定义 14.8 G=<V,E>, G=<V,E>
(1) GG —— G 为 G 的子图, G 为 G 的母图
(2) 若 GG 且 V=V ,则称 G 为 G 的生成子图 (3) 若 VV 或 EE ,称 G 为 G 的真子图
(4) V ( VV 且 V )的导出子图,记作 G[V]
(5) E ( EE 且 E )的导出子图,记作 G[E]
例 2 画出 K4 的所有非同构的生成子图
实例
补图
定义 14.9 设 G=<V,E> 为 n 阶无向简单图,以 V 为顶点集
,以所有使 G 成为完全图 Kn的添加边组成的集合为边集的 图,称为 G 的补图,记作 .
若 G , 则称 G 是自补图 .
相对于 K4, 求上面图中所有图的补图,并指出哪些是自补 图 .
问:互为自补图的两个图的边数有何关系?
G
G
14.2 通路与回路
定义 14.11 给定图 G=<V,E> (无向或有向的), G 中顶点与 边的交替序列 = v0e1v1e2…elvl, vi1, vi 是 ei 的端点 .
(1) 通路与回路: 为通路;若 v0=vl, 为回路, l 为回路长 度 .
(2) 简单通路与回路:所有边各异, 为简单通路,又若 v0=vl,
为简单回路
(3) 初级通路 ( 路径 ) 与初级回路 ( 圈 ) : 中所有顶点各异,则 称 为初级通路 ( 路径 ) ,又若除 v0=vl,所有的顶点各不相 同且所有的边各异,则称 为初级回路 ( 圈 )
(4) 复杂通路与回路:有边重复出现
几点说明
表示法
① 定义表示法 ② 只用边表示法
③ 只用顶点表示法(在简单图中)
④ 混合表示法
环(长为 1 的圈)的长度为 1 ,两条平行边构成的圈长度为
2 ,无向简单图中,圈长 3 ,有向简单图中圈的长度 2.
不同的圈(以长度 3 的为例)
① 定义意义下
无向图:图中长度为 l ( l3 )的圈,定义意义下为 2l 个 有向图:图中长度为 l ( l3 )的圈,定义意义下为 l 个 ② 同构意义下:长度相同的圈均为 1 个
试讨论 l=3 和 l=4 的情况
通路与回路的长度
定理 14.5 在 n 阶图 G 中,若从顶点 vi 到 vj( vivj)存在通路,
则从 vi 到 vj 存在长度小于或等于 n1 的通路 .
推论 在 n 阶图 G 中,若从顶点 vi 到 vj( vivj)存在通路,则 从 vi 到 vj 存在长度小于或等于 n1 的初级通路(路径) .
定理 14.6 在一个 n 阶图 G 中,若存在 vi 到自身的回路,则一 定存在 vi 到自身长度小于或等于 n 的回路 .
推论 在一个 n 阶图 G 中,若存在 vi 到自身的简单回路,则一 定存在长度小于或等于 n 的初级回路 .
14.3 图的连通性
无向图的连通性
(1) 顶点之间的连通关系: G=<V,E> 为无向图 ① 若 vi 与 vj 之间有通路,则 vivj
② 是 V 上的等价关系 R={<u,v>| u,v V 且 uv}
(2) G 的连通性与连通分支
① 若 u,vV , uv ,则称 G 连通
② V/R={V1,V2,…,Vk} ,称 G[V1], G[V2], …,G[Vk] 为连通分 支,其个数 p(G)=k (k1) ;
k=1 , G 连通
短程线与距离
(3) 短程线与距离
① u 与 v 之间的短程线: uv , u 与 v 之间长度最短的
通路
② u 与 v 之间的距离: d(u,v)—— 短程线的长度
③ d(u,v) 的性质:
d(u,v)0, u≁v 时 d(u,v)=
d(u,v)=d(v,u)
d(u,v)+d(v,w)d(u,w)
无向图的连通度
1. 删除顶点及删除边
Gv —— 从 G 中将 v 及关联的边去掉
GV—— 从 G 中删除 V 中所有的顶点
Ge —— 将 e 从 G 中去掉
GE—— 删除 E 中所有边
2. 点割集与边割集 点割集与割点
定义 14.16 G=<V,E>, VV
V 为点割集—— p(GV)>p(G) 且有极小性
v 为割点—— {v} 为点割集
定义 14.17 G=<V,E>, EE
E 是边割集—— p(GE)>p(G) 且有极小性
e 是割边(桥)—— {e} 为边割集
点割集与割点
例 3 {v1,v4} , {v6} 是点 割集, v6是割点 . {v2,v5} 是点割集吗?
{e1,e2} , {e1,e3,e5,e6} , {e8} 等是边割集, e8是 桥, {e7,e9,e5,e6} 是边割 集吗?
几点说明:
Kn中无点割集, Nn中既无点割集,也无边割集,其中 Nn为 n 阶零图 .
若 G 连通, E 为边割集,则 p(GE)=2 , V 为点割集,
则 p(GV)2
点连通度与边连通度
定义 14.18 G 为连通非完全图
点连通度— (G) = min{ |V |V 为点割集 } 规定 (Kn) = n1
若 G 非连通, (G) = 0
若 (G)k ,则称 G 为 k- 连通图 定义 14.19 设 G 为连通图
边连通度—— (G) = min{|E|E 为边割集 } 若 G 非连通,则 (G) = 0
若 (G)r ,则称 G 是 r 边 - 连通图
图中, ==1 ,它是 1- 连通图 和 1 边 - 连通图
几点说明
(Kn)=(Kn)=n1
G 非连通,则 ==0
若 G 中有割点,则 =1 ,若有桥,则 =1
若 (G)=k, 则 G 是 1- 连通图, 2- 连通图,…, k- 连通图
,但不是 (k+s)- 连通图, s1
若 (G)=r, 则 G 是 1- 边连通图, 2- 边连通图,…, r- 边 连通图,但不是 (r+s)- 边连通图, s1
, , 之间的关系 .
定理 7.5 (G)(G)(G)
请画出一个 << 的无向简单图
有向图的连通性
定义 14.20 D=<V,E> 为有向图
vi vj( vi 可达 vj)—— vi 到 vj 有通路 vi vj( vi 与 vj 相互可达)
性质
具有自反性 (vi vi) 、传递性 具有自反性、对称性、传递性 vi 到 vj 的短程线与距离
类似于无向图中,只需注意距离表示法的不同
( 无向图中 d(vi,vj) ,有向图中 d<vi,vj>) 及 d<vi,vj> 无对称性
有向图的连通性及分类
定义 14.22 D=<V,E> 为有向图
D 弱连通 ( 连通 )—— 基图为无向连通图
D 单向连通—— vi,vjV , vivj 或 vjvi
D 强连通—— vi,vjV , vivj 易知,强连通单向连通弱连通 判别法
定理 14.8 D 强连通当且仅当 D 中存在经过每个顶点至少一次 的回路
定理 14.9 D 单向连通当且仅当 D 中存在经过每个顶点至少一 次的通路
扩大路径法
无向图中
设 G=<V,E> 为 n 阶无向图, E. 设 l 为 G 中一条路径,若 此路径的始点或终点与通路外的顶点相邻,就将它们扩到通
路中来,继续这一过程,直到最后得到的通路的两个端点不 与通路外的顶点相邻为止 . 设最后得到的路径为 l+k(长度 为 l 的路径扩大成了长度为 l+k 的路径),称 l+k为“极大路 径”,称使用此种方法证明问题的方法为“扩大路径法” .
有向图中类似讨论,只需注意,在每步扩大中保证有向边方 向的一致性 .
实例
由某条路径扩大出的极大路径不惟一,极大路径不一定是 图中最长的路径
上图中, (1) 中实线边所示的长为 2 的初始路径, (2),(3),(4) 中实线边所示的都是它扩展成的极大路径 .
还能找到另外的极大路径吗?
(1) (2)
(4) (3)
扩大路径法的应用
例 4 设 G 为 n ( n3 )阶无向简单图, 2 ,证明 G 中存在 长度 +1 的圈 .
证 设 = v0v1…vl 是由初始路径 0 用扩大路径法的得到的极 大路径,则 l (为什么?) .
因为 v0 不与 外顶点相邻,又 d(v0) ,因而在 上除 v1
外,至少还存在 1 个顶点与 v0 相邻 . 设 vx 是离 v0 最远的顶 点,于是 v0v1…vxv0 为 G 中长度 +1 的圈 .
二部图
定义 14.23 设 G=<V,E> 为一个无向图,若能将 V 分成 V1和 V2
(V1V2=V , V1V2=) ,使得 G 中的每条边的两个端点都是 一个属于 V1,另一个属于 V2,则称 G 为二部图 ( 或称二分 图、偶图等 ) ,称 V1和 V2为互补顶点子集,常将二部图 G 记为 <V1,V2,E>.
又若 G 是简单二部图, V1中每个顶点均与 V2中所有的顶点相 邻,则称 G 为完全二部图,记为 Kr,s,其中 r=|V1| , s=|V2|.
注意, n 阶零图为二部图 .
二部图的判别法
定理 14.10 无向图 G=<V,E> 是二部图当且仅当 G 中无奇圈 由定理 14.10 可知图 9 中各图都是二部图,哪些是完全二部 图?哪些图是同构的?
14.4 图的矩阵表示
无向图的关联矩阵(对图无限制)
定义 14.24 无向图 G=<V,E> , |V|=n , |E|=m ,令 mij为 vi
与 ej
的关联次数,称 (mij)nm为 G 的关联矩阵,记为 M(G).
性质
平行边的列相同 )
4 (
2 )
3 (
) ,..., 2 , 1 (
) ( )
2 (
) ,..., 2 , 1 (
2 )
1 (
,
1 1
m m
n i
v d m
m j
m
j i
ij
i m
j ij
n
i ij
37
j i
ij m
j
m
j ij i
i ij
n
i ij
m
n i
v d m
v d m
m j
m
,
1 1
1
0 )
3 (
,..., 2 , 1 ),
( )
1 (
), ( )
1 (
) 2 (
) ,..., 2 , 1 (
0 )
1 (
的终点 为
,
不关联 与
,
的始点 为
j i
j i
j i
ij
e v
e v
e v
m
1 0
, 1
有向图的关联矩阵(无环有向 图)
定义 14.25 有向图 D=<V,E> ,令
则称 (mij)nm 为 D 的关联矩阵,记为 M(D).
(4) 平行边对应的列相同 性质
有向图的关联矩阵
有向图的邻接矩阵(无限制)
定义 14.26 设有向图 D=<V,E>, V={v1, v2, …, vn}, E={e1, e2, … ,
em}, 令为顶点 vi 邻接到顶点 vj 边的条数,称为 D 的邻接矩 阵,记作 A(D) ,或简记为 A.
性质
的回路数 中长度为
的通路数 中长度为
1 )
4 (
1 )
3 (
,..., 2 , 1 ),
( )
2 (
,..., 2 , 1 ),
( )
1 (
1 ) 1 ( ,
) 1 ( 1
) 1 ( 1
) 1 (
D a
D m
a
n j
v d a
n i
v d a
n
i ii
j i
ij
j n
i ij
i n
j ij
推论 设 Bl=A+A2+…+Al ( l1 ),则 Bl 中元素
为 D 中长度为 l 的通路总数,
) ( l
aij
) (l
a
ii
n in j
l
aij
1 1
) (
ni
l
aii 1
) (
n i
n j
l
bij
1 1
) (
ni
l
bii 1
) (
定理 14.11 设 A 为有向图 D 的邻接矩阵, V={v1, v2, …, v
n} 为顶点集,则 A 的 l 次幂 Al ( l1 )中元素 为 D 中 vi 到 vj 长度为 l 的通路数,其中
为 vi 到自身长度为 l 的回路数,而
为 D 中长度小于或等于 l 的回路数
为 D 中长度小于或等于 l 的通路数 .
邻接矩阵的应用
为 D 中长度为 l 的回路总数 .
例 5 有向图 D 如图所示,求 A, A2, A3, A4 ,并回答诸问题:
(1) D 中长度为 1, 2, 3, 4 的通路各有多少条?其中回路分别为
多少条?
(2) D 中长度小于或等于 4 的通路为多少条?其中有多少条回
路?
实例
41
1 0 0 4
0 1 0 4
1 0 0 5
0 0 0 1
0 1 0 3
1 0 0 3
0 1 0 4
0 0 0 1
1 0 0 2
0 1 0 2
1 0 0 3
0 0 0 1
0 1 0 1
1 0 0 1
0 1 0 2
0 0 0 1
4 3
2
A A
A A
(1) D 中长度为 1 的通路为 8 条,其中有 1 条是回路 .
D 中长度为 2 的通路为 11 条,其中有 3 条是回路 .
D 中长度为 3 和 4 的通路分别为 14 和 17 条,回路分别
为 1 与 3 条 .
(2) D 中长度小于等于 4 的通路为 50 条,其中有 8 条是回路 .
实例求解
否则 可达
,
1 ,
0
i jij
v p v
1 1
0 1
1 1
0 1
1 1
1 1
0 0
0 1
P
定义 14.27 设 D=<V,E> 为有向图 . V={v1, v2, …, vn}, 令
有向图的可达矩阵(无限制)
称 (pij)nn 为 D 的可达矩阵,记作 P(D) ,简记为 P.
由于 viV , vivi ,所以 P(D) 主对角线上的元素全为 1.
由定义不难看出 , D 强连通当且仅当 P(D) 为全 1 矩阵 . 下图所示有向图 D 的可达矩阵为
第十四章 习题课
主要内容
无向图、有向图、关联与相邻、简单图、完全图、正则图
、子图、补图;握手定理与推论;图的同构
通路与回路及其分类
无向图的连通性与连通度
有向图的连通性及其分类
图的矩阵表示
基本要求
深刻理解握手定理及推论的内容并能灵活地应用它们
深刻理解图同构、简单图、完全图、正则图、子图、补图
、二部图的概念以及它们的性质及相互之间的关系
记住通路与回路的定义、分类及表示法
深刻理解与无向图连通性、连通度有关的诸多概念
会判别有向图连通性的类型
熟练掌握用邻接矩阵及其幂求有向图中通路与回路数的方 法,会求可达矩阵
1 . 9 阶无向图 G 中,每个顶点的度数不是 5 就是 6.
证明 G 中至少有 5 个 6 度顶点或至少有 6 个 5 度顶点 .
练习 1
证 关键是利用握手定理的推论 . 方法一:穷举法
设 G 中有 x 个 5 度顶点,则必有 (9x) 个 6 度顶点,由握 手定理推论可知, (x,9x) 只有 5 种可能: (0,9), (2,7), (4, 5), (6,3), (8,1 )它们都满足要求 .
方法二:反证法
否则,由握手定理推论可知,“ G 至多有 4 个 5 度顶点并 且至多有 4 个 6 度顶点”,这与 G 是 9 阶图矛盾 .
2 .数组 2, 2, 2, 2, 3, 3 能简单图化吗?若能,画出尽可能多 的非同构的图来 .
练习 2
只要能画出 6 阶无向简单图,就说明它可简单图化 . 下图的 4 个图都以此数列为度数列,请证明它们彼此不同构,都是 K6 的子图 .
用扩大路径法证明 .
情况一: +. 证明 D 中存在长度 +1 的圈 .
设 = v0v1…vl 为极大路径,则 l ( 为什么 ?). 由于 d(v0)
,所以在 上存在
PLAY
i i
i v v
v , ,...,
2
1 0 1... ... ... 0
2
1 v v v
v v
v i i i
邻接到 v0 ,于是
情况二: + ,只需注意 d+(vl) + .
3 .设 D=<V,E> 为有向简单图,已知 (D) 2 , +(D)>0
, (D)>0 ,证明 D 中存在长度 max{+,}+1 的圈 .
为 D 中长度 +1 的有向圈
练习 3
(1) D 中有几种非同构的圈?
(2) D 中有几种非圈非同构的简单回路?
(3) D 是哪类连通图 ?
(4) D 中 v1到 v4长度为 1,2,3,4 的通路各多少 条?其中几条是非初级的简单通路?
(5) D 中 v1到 v1长度为 1,2,3,4 的回路各多少 条?讨论它们的类型 .
(6) D 中长度为 4 的通路(不含回路)有多少条?
(7) D 中长度为 4 的回路有多少条?
(8) D 中长度 4 的通路有多少条?其中有几条是回路?
(9) 写出 D 的可达矩阵 .
4 .有向图 D 如图所示,回答下列诸问:
练习 4
49
解答
(1) D 中有 3 种非同构的圈,长度分别为 1,2,3 ,请画出它们
的图形 .
(2) D 中有 3 种非圈的非同构的简单回路,它们的长度分别为
4,5,6. 请画出它们的图形来 .
(3) D 是强连通的(为什么?)
为解 (4)—(8) ,只需先求 D 的邻接矩阵的前 4 次幂 .
1 2 2 2
2 3 4 4
1 2 2 2
2 4 6 5
0 1 2 1
1 2 2 2
0 1 2 1
2 2 2 3
1 0 0 1
0 1 2 1
1 0 0 1
0 2 2 1
0 1 0 0
1 0 0 1
0 1 0 0
0 0 2 1
4 3
2
A A
A A