离散数学及其应用课件第8章特殊图

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
离散数学及其应用
第8章 特殊图
8.1 欧拉图与哈密顿图 8.2 带权图 8.3 匹配和二分图 8.4 平面图
8.1 欧拉图与哈密顿图
哥尼斯堡七桥问题、周游世界问题
欧拉图
定义8.1.1 设G=(V,E)是无向图或有向图,若G中有一条 包含所有边(有向边)的简单回路,称该回路为欧拉回路,称 图G为欧拉图。若G中有一条包含G中所有边(有向边)的简 单通路,称它为欧拉通路,称图G为半欧拉图。
例8.1.2 在下图中,哪些是欧拉图?哪些是半欧拉图?
欧拉图
欧拉图
半欧拉图
欧拉有向图
定义8.1.2 如果连通有向图G中有一条包含G中所有有向边 的有向回路,称它为欧拉有向回路,称图G为欧拉有向图。如 果连通有向图G中有一条包含G中所有有向边的有向通路,称 它为欧拉有向通路,称图G为半欧拉有向图。
a
d
a
d
a
d
b
c
b
欧拉有向图
c
b
c
半欧拉有向图
欧拉有向图的判断
定理8.1.3 连通有向图G是欧拉图,当且仅当G中每个结点v 的入度等于它的出度。
定理8.1.4 连通有向图G是半欧拉图,当且仅当G中有且仅 有两个奇度数结点,其中一个结点的入度比出度大1,另一个 结点的入度比出度小1。
例题
例8.1.3 在图中,哪些是欧拉图?哪些是半欧拉图?
1
27
5
8
6
2
7
5
8
6
9 10
3
4
3
4
1
7
8
6
3
4
例题
例8.1.4 说明下图 所示的无向图G不是哈密顿图。 解 在图中删去结点集S={v2,v4,v6,v8},W(G−S)=5,不 满足W(G-S)|S|。所以G不是哈密顿图。
v1
v2
v3
v4
v5
v6
v7
v8
v9
哈密顿图的充分条件
定理8.1.6 如果G是有 n个结点的简单无向图,对于每一对 不邻接结点u和v,满足d(u)+d(v) n-1,那么G中存在哈密顿通 路,图G是半哈密顿图。
欧拉图
半欧拉图
例题
例8.1.1 在下面的图中,哪些有欧拉回路?没有欧拉回路的图中,
哪些有欧拉通路?
a
a
a
b
cb
cb
c
d
ed
b-c-d-b-e-c-a-b
ed
e
b-d-c-e-b-a-c
欧拉图的判断
定理8.1.1 无向连通图G是欧拉图,当且仅当G的所有结点 的度数都是偶数。
定理8.1.2 连通无向图G为半欧拉图,当且仅当G中只有两 个奇度数的结点。
M交错路和M可扩充路
定义8.3.3 若M是G=(V,E)的一个匹配,从G中的一个结 点到另一个结点存在一条由属于M的边和不属于M的边交替出 现组成的简单路,则称这条简单路为M交错路。若M交错路的 两端点为M非饱和点时,称这条M交错路是M可扩充路。
最大匹配的充分必要条件
在图(1)中,M={e1,e7}是图的一个匹配, { e2, e1, e4, e7, e8}是M交错路,而且是M可扩充 路。匹配M1={ e2, e4, e8}比M更大。
欧拉图
半欧拉图
8.1.2 哈密顿图
环游世界问题
哈密顿图
定义8.1.3 设图G=(V,E)是无向图或有向图。若G中有一 条包含G的所有结点(仅一次)的回路,称该回路为哈密顿回路, 称图G为哈密顿图。若图G有一条包含G的所有结点的通路, 称该通路为哈密顿通路,称图G为半哈密顿图。
(1)是半哈密尔顿图
a
a
5
12 b
8
5
e4
b
85
e4
7 16
9
8
9
c 9d
c 9d
n个结点的图上,以每个结点为起点的所有的哈密顿回 路共有(n-1)! 条,需要计算(n-1)!/2条回路的权值来求出答案。 当结点较多时用这种方法解决旅行商问题是不切实际的,常 用近似算法求解旅行商问题。
8.2.2最短路径问题
– 在一个无向简单连通边带权图G=(V,E,W)中,从u到v
M1={(v1,v5),(v3,v6),(v2,v7), (v4,v8)} 。由于不存在M1可扩充路,所以 M1是最大匹配。
8.3.2 二分图
定义8.3.4 如果无(有)向图G=(V,E)的结点集V能划分 成两个子集V1和V2,使得G中任何一条边的两个端点一个属于 V1,另一个属于V2,则称G为二分(部)图,V1和V2称为互补 结点集,二分图通常记为G=(V1,V2,E)。若V1中每一结点 与V2中每一个结点均有且仅有一条边相关联,则称二分图G为 完全二分图。若| V1|=m , | V2|=n ,则记完全二分图G为Km,n。
图G的一条哈密顿回路是ABDFGECA,按这条哈密顿回路安排就坐成一圈, 每个 人都能与两旁的人交谈。
应用2-格雷码
例8.1.6 在一组数的编码中,若任意两个相邻的代码只有一 位二进制数不同,则称这种编码为格雷码。表8.1.1是2位格雷 码,表示数0~3,表8.1.2是3位格雷码,表示数0~7。
格雷码
定理 8.2.1 设G(V,E,W)为一个连通的带权图,则使附 加边子集E1 的权数W(E1)为最小的充分必要条件是G+E1 中任 意边至多重复一次,且G+E1 中的任意回路中重复边的权值之 和不大于该回路总权值的一半。
中国邮路问题
8.3 匹配和二分图
定义8.3.1 在图G=(V,E)中, 若ME, 且M中任意两条边都不 相邻,则称M为G的一个匹配。若在M中再加入任意其它的边e, M{e}有相邻的边,则称M为G的极大匹配。若G中不存在匹 配M1,使得|M1| >| M|,则称M为G的最大匹配。
定理8.1.2证明
定理8.1.2 连通无向图G为半欧拉图,当且仅当G中只有两 个奇度数的结点。
证明 在连通无向图G的两个奇度数的结点之间加一条边e得 到图G,则图G的所有结点的度数都是偶数,有欧拉回路。在 G的欧拉回路中删去这条边e,则可得到一条包含G中所有边 的欧拉通路。因此图G是半欧拉图。
例题
用格雷码表示的最大数与最小数之间也仅一位数不同,即 “首尾相连”,因此这种编码又称循环码。在数字系统中,常要 求代码按一定顺序变化。例如,按自然数递增计数,若采用 8421码,则数0111变到1000时四位均要变化,而在实际电路中, 4位的变化不可能绝对同时发生,则计数中可能出现短暂的其 它代码(如0110、1111等)。在特定情况下可能导致电路状态 错误或输入输出错误。使用格雷码,变化到下一状态时只有1 位不同,可以避免这种错误。
格雷码
要找到格雷码,可以用n立方体Qn来建模。在Qn图上找一条 哈密顿回路,按哈密顿回路上的结点顺序对应的二进制码序列
就是格雷码。例如,
10
11
110
111
010
011
00
01
100
101
000
001
8.2 带权图
设G=<V,E,W>,V={v1,v2,…Baidu Nhomakorabeavn}是顶点集合,E是边集
合,W: VVR是赋值函数。
Dijkstra算法
8.2.3 中国邮路问题
– 一名邮递员带着要分发的邮件从邮局出发,经过要分发的每 个街道,送完邮件后又返回邮局.如果他必须至少一次走过 他负责范围内的每一条街道,如何选择投递路线,邮递员可 以走尽可能少的路程?这个问题是由我国数学家管梅谷先生 (山东师范大学数学系教授)在1962年首次提出的,因此在 国际上称之为中国邮路问题.
二分图
例如,一个单位有一些不同类型的工作空缺,有一
些应聘者申请这些空缺的工作岗位。每个应聘者能胜
任这些工作中的某些工作。如工作岗位集合为{u1,u2, u3},应聘者集合为{v1,v2,v3,v4,v5}。每个应聘者 能胜任的工作岗位可以图8.3.3所示的二分图表示,其 中线uivj表示工作岗位ui适合应聘者vj。
定理8.1.1证明
定理8.1.1 无向连通图G是欧拉图,当且仅当G的所有结点的度数都 是偶数。
证明:(必要性) 设G是欧拉图,则G有欧拉回路C。设a是图G的任一结点,欧拉回路 经过和a关联的边到结点a后又经过另一条和a关联的边离开到下一个结 点b,因此每经过一个结点a就给它的度数贡献2度。若欧拉回路k次经过 结点a,则d(a)=2k。所以,欧拉图的所有结点的度数都是偶数。 (充分性) 假设G中所有结点的度数都是偶数。从G中的任一结点v1开始,经过 任一和v1关联的边e1到另一结点v2,再经过另一和v2关联的边e2到另一结 点v3,依此类推,可以得到一条包含G的边的简单回路C1:v1 e1 v2 e2 v3 em v1。
定义8.3.2若M是G的一个匹配,M的边和结点v关联,则称v 为M饱和点,否则称v为M非饱和点。若G=(V,E)的每个结 点都是M饱和点,则称M为G的一个完美匹配。
例题
(1). {e1, e7}是图的一个匹配,也是一个极大匹配, { e2, e4, e8} 是图的最大匹配,也是完美匹配。 (2). {e2, e6}、{e3, e5}是图的匹配,也是极大匹配,{ e1, e4, e7} 是图的一个最大匹配,也是完美匹配。 (3).{e3, e4}、{e1, e5}、{e2, e6}、{e4, e7}等都是极大匹配,也是 最大匹配,没有完美匹配。
(2)为哈密尔顿图
(3)没有哈密顿通路,也没有哈 密顿回路
哈密顿图的必要条件
定理8.1.5 设无向图G=(V,E)是哈密顿图,则对于结点
集V的每一个真子集S均有:W(G-S)|S|, 其中,W(G-S)是G-S的
导出子图的连通分支数。
例如:彼德森图中对于结点集V的每一个真子集S均有:
W(G-S)|S|。但彼德森图不是哈密顿图。
推论1 如果图G是有 n个结点的简单无向图,对于每一对不 邻接结点u和v,满足d(u) + d(v) n,那么G中存在哈密顿回路, 图G是哈密顿图。
推论2 如果G是有 n个结点的简单无向图,G中每个结点的 度数都至少为n/2,那么图G是哈密顿图。
例题
应用1
例8.1.5 有7个人, A会讲英语, B会讲英语和汉语, C会讲英语、 意大利语和俄语, D会讲日语和汉语, E会讲德语和意大利语, F 会讲法语、日语和俄语, G会讲法语和德语. 问能否将他们沿圆 桌安排就坐成一圈, 使得每个人都能与两旁的人交谈?
2. 修改和结点u相邻的结点的标记值:L(vi)= W(u,vi)。 3. 将具有最小L值的结点记为t,并添加到结点集S中,即S = S{t}。 4. 修改和结点t相邻且不在集合S中的结点的L值: L(vi)=min{L(vi), L(t)+W(t,vi)}。 5. 重复3和4直到结点v被添加到集合S中。
旅行商问题(TSP) – 完全无向图的每个结点表示一个城市,用两个城市之间
的距离作为边的权,可以得到一个边带权的完全无向图。 旅行商问题是在这样的图中寻找一条旅行总距离最短的 经过每个城市一次且仅一次,又回到出发城市的旅行线 路的问题。这个问题等价于求带权完全图中总权值最小 的哈密顿回路。
8.2.1 旅行商问题
定理8.3.1 M是图G=(V,E)的最大匹配的充分 必要条件是G中不存在M可扩充路。
例题
v1
v5
求右图的最大匹配。
v2
v6
v3
v7
v4
v8
解 在图中,M={(v2,v6),(v3,v5),(v4, v7)} 是匹配,v1v5v3v6v2v7v4v8是M交错路,而 且是M可扩充路。因此,存在比M更大的匹配
中国邮路问题
首先注意到,若图G有奇数度结点,则G的奇数度结点必是偶数个. 把奇数度结点配为若干对,每对结点之间在G中有相应的最短路,将这 些最短路画在一起构成一个附加的边子集E1.令G1 =G+E1,即把附加边子 集E1 叠加在原图G上形成一个多重图G1,这时G1中没有奇度数结点.显然 G1是一个欧拉图,因而可以求出G1的欧拉回路.该欧拉回路不仅通过原图 G中每条边,同时还通过E1 中的每条边,且均仅一次. 邮递员问题的难点在于当G的奇数度节点较多时,可能有很多种配对方 法,应怎样选择配对,能使相应的附加边子集E1 的权数W(E1)为最小。
– 用图论的述语,在一个连通的带权图G=(V,E,W)中,要 寻找一条回路,使该回路包含G中的每条边至少一次,且该回 路的总权值最小,也就是说要从包含G的每条边的回路中找一 条总权值最小的回路。
中国邮路问题
如果G是欧拉图,只要求出图G的一条欧拉回路即可。 因此问题就转化为:在有奇度数结点的连通带权图中,在 包含G中每条边至少一次的回路中找一条总权值最小的回路。
的一条通路中包含的各条边的权值之和称为这条通路的长
度。
– 从u到v的所有通路中长度最短的通路称为u到v的最短路径。
– 求给定两结点之间的最短路径问题称为最短路径问题
a 2 u 1
c
3b
2
1
v
2 3d
uadv是u到v的最短路径
Dijkstra算法
1. 初始化。除L(u)初始化为0,其它所有顶点L(vi)=+, i=1,2,,n. S={u}。
相关文档
最新文档