《欧拉图与哈密顿PPT课件》由会员分享,可在线阅读,更多相关《欧拉图与哈密顿PPT课件(40页珍藏版)》请在金锄头文库上搜索。
1、第第1515章章 欧拉图与哈密顿图欧拉图与哈密顿图离离 散散 数数 学学本章内容本章内容15.1 15.1 欧拉图欧拉图15.2 15.2 哈密顿图哈密顿图15.3 15.3 带权图与货郎担问题带权图与货郎担问题15.1 15.1 欧拉图欧拉图q历史背景哥尼斯堡七桥问题历史背景哥尼斯堡七桥问题q欧拉图是一笔画出的边不重复的回路欧拉图是一笔画出的边不重复的回路。欧拉图欧拉图 通过图(无向图或有向图)中通过图(无向图或有向图)中所有边一次且仅一次所有边一次且仅一次行遍图中行遍图中所有顶点所有顶点的通路称为的通路称为欧拉通路欧拉通路,通过图中所有边一次并且仅,通过图中所有边一次并且仅一次行遍所有顶点
2、的一次行遍所有顶点的回路回路称为称为欧拉回路欧拉回路。具有欧拉回路的图。具有欧拉回路的图称为称为欧拉图欧拉图,具有欧拉通路而无欧拉回路的图称为,具有欧拉通路而无欧拉回路的图称为半欧拉图半欧拉图。 说明说明欧拉通路是图中经过所有边的简单的生成通路欧拉通路是图中经过所有边的简单的生成通路( (经过所经过所有顶点的通路称为生成通路有顶点的通路称为生成通路) )。欧拉回路是经过所有边的简单的生成回路。欧拉回路是经过所有边的简单的生成回路。规定:平凡图是欧拉图规定:平凡图是欧拉图 举例举例欧拉图欧拉图半欧拉图半欧拉图无欧拉通路无欧拉通路欧拉图欧拉图无欧拉通路无欧拉通路无欧拉通路无欧拉通路无向欧拉图的判定
3、定理无向欧拉图的判定定理无向欧拉图的判定定理无向欧拉图的判定定理 无向图无向图G是欧拉图当且仅当是欧拉图当且仅当G是连通图,且是连通图,且G中没有奇度顶点。中没有奇度顶点。证明证明 若若G是平凡图,结论显然成立。是平凡图,结论显然成立。下面设下面设G为非平凡图,设为非平凡图,设G是是m条边的条边的n n阶无向图,阶无向图,并设并设G的顶点集的顶点集V v1 1, ,v2 2,vn 。必要性必要性。因为。因为G为欧拉图,所以为欧拉图,所以G中存在欧拉回路,中存在欧拉回路,设设C为为G中任意一条欧拉回路,中任意一条欧拉回路, vi, ,vjV,vi, ,vj都在都在C上,上,因而因而vi, ,vj
4、连通,所以连通,所以G为连通图。为连通图。又又 viV,vi在在C上每出现一次获得上每出现一次获得2 2度,度,若出现若出现k次就获得次就获得2 2k度,即度,即d( (vi) )2 2k,所以所以G中无奇度顶点。中无奇度顶点。充分性充分性。由于。由于G为非平凡的连通图可知,为非平凡的连通图可知,G中边数中边数m11。对对m作归纳法。作归纳法。 (1)(1)m1 1时,由时,由G的连通性及无奇度顶点可知,的连通性及无奇度顶点可知,G只能是一个环,因而只能是一个环,因而G G为欧拉图。为欧拉图。 (2)(2)设设mk( (k1)1)时结论成立,要证明时结论成立,要证明mk+1+1时,结论也成立。
5、时,结论也成立。由由G的连通性及无奇度顶点可知,的连通性及无奇度顶点可知,(G)2)2。无论无论G是否为简单图,都可以用是否为简单图,都可以用扩大路径法扩大路径法证明证明G中必含圈。中必含圈。设设C为为G中一个圈,删除中一个圈,删除C上的全部边,得上的全部边,得G的生成子图的生成子图G ,设设G 有有s个连通分支个连通分支G 1 1, ,G 2 2,G s,每个连通分支至多有每个连通分支至多有k条边,且无奇度顶点,条边,且无奇度顶点,并且设并且设G i与与C的公共顶点为的公共顶点为v* *ji,i1,2,1,2,s,由归纳假设可知,由归纳假设可知,G 1 1, ,G 2 2,G s都是欧拉图,
6、都是欧拉图,因而都存在欧拉回路因而都存在欧拉回路C i,i1,2,1,2,s。最后将最后将C还原(还原(即将删除的边重新加上即将删除的边重新加上),),并从并从C上的某顶点上的某顶点vr开始行遍,每遇到开始行遍,每遇到v* *ji,就行遍就行遍G i中的欧拉中的欧拉回路回路C i,i1,2,1,2,s,最后回到最后回到vr,得回路得回路vrv* *j1 1v* *j1 1v* *j2 2v* *j2 2v* *jsv* *jsvr,此回路经过此回路经过G中每条边一次且仅一次并行遍中每条边一次且仅一次并行遍G中所有顶点,中所有顶点,因而它是因而它是G中的欧拉回路,中的欧拉回路,故故G为欧拉图。为
7、欧拉图。欧拉图的判定定理欧拉图的判定定理欧拉图的判定定理欧拉图的判定定理 G是非平凡的欧拉图当且仅当是非平凡的欧拉图当且仅当G是连通的且为若干个边不重的圈是连通的且为若干个边不重的圈的并。的并。 无向图无向图G是半欧拉图当且仅当是半欧拉图当且仅当G是连通的,且是连通的,且G中恰有两个奇度顶中恰有两个奇度顶点。点。证明证明 必要性必要性。设。设G是是m条边的条边的n阶无向图,因为阶无向图,因为G为半欧拉图,为半欧拉图,因而因而G中存在欧拉通路中存在欧拉通路( (但不存在欧拉回路但不存在欧拉回路) ),设设vi0 0ej1 1vi1 1vim-1-1ejmvim为为G中一条欧拉通路,中一条欧拉通路
8、,vi0 0vim。 vV( (G) ),若若v不在不在的端点出现,显然的端点出现,显然d( (v) )为偶数,为偶数,若若v在端点出现过,则在端点出现过,则d( (v) )为奇数,为奇数,因为因为只有两个端点且不同,因而只有两个端点且不同,因而G中只有两个奇数顶点。中只有两个奇数顶点。另外,另外,G的连通性是显然的。的连通性是显然的。半欧拉图的判定定理半欧拉图的判定定理半欧拉图的判定定理半欧拉图的判定定理 无向图无向图G是半欧拉图当且仅当是半欧拉图当且仅当G是连通的,且是连通的,且G中恰有两个奇度顶中恰有两个奇度顶点。点。证明证明 充分性充分性。设。设G的两个奇度顶点分别为的两个奇度顶点分别
9、为u0 0和和v0 0,对对G加新边(加新边(u0 0, ,v0 0),),得得G G(u0 0, ,v0 0) ),则则G 是连通且无奇度顶点的图,是连通且无奇度顶点的图,由定理由定理15.115.1可知,可知,G 为欧拉图,为欧拉图,因而存在欧拉回路因而存在欧拉回路C ,而而CC -(-(u0 0, ,v0 0) )为为G中一条欧拉通路,中一条欧拉通路,所以所以G为半欧拉图。为半欧拉图。 半欧拉图的判定定理半欧拉图的判定定理半欧拉图的判定定理半欧拉图的判定定理有向欧拉图的判定定理有向欧拉图的判定定理有向欧拉图的判定定理有向欧拉图的判定定理 有向图有向图D是欧拉图当且仅当是欧拉图当且仅当D是
10、强连通的且每个顶点的入度都等是强连通的且每个顶点的入度都等于出度。于出度。 有向图有向图D是半欧拉图当且仅当是半欧拉图当且仅当D是单向连通的,且是单向连通的,且D中恰有两个中恰有两个奇度顶点,其中一个的入度比出度大奇度顶点,其中一个的入度比出度大1 1,另一个的出度比入度,另一个的出度比入度大大1 1,而其余顶点的入度都等于出度。,而其余顶点的入度都等于出度。 设设G是非平凡的且非环的欧拉图,证明:是非平凡的且非环的欧拉图,证明:(1)(1)(G)2)2。(2)(2)对于对于G中任意两个不同顶点中任意两个不同顶点u, ,v,都存在简单回路都存在简单回路C含含u和和v。证明证明 (1) (1)由
11、定理由定理15.515.5可知,可知, eE( (G) ),存在圈存在圈C,e在在C中,中,因而因而p( (G- -e) )p( (G) ),故故e不是桥。不是桥。由由e的任意性的任意性(G)2)2,即即G是是2 2边边- -连通图。连通图。(2)(2) u, ,vV( (G) ),uv,由由G的连通性可知,的连通性可知,u, ,v之间必存在路径之间必存在路径1 1,设设G G- -E(1 1) ),则在则在G 中中u与与v还必连通,还必连通,否则,否则,u与与v必处于必处于G 的不同的连通分支中,的不同的连通分支中,这说明在这说明在1 1上存在上存在G中的桥,这与中的桥,这与(1)(1)矛盾
12、。矛盾。于是在于是在G 中存在中存在u到到v的路径的路径2 2,显然显然1 1与与2 2边不重,边不重,这说明这说明u, ,v处于处于1 12 2形成的简单回路上。形成的简单回路上。求欧拉图中欧拉回路的算法求欧拉图中欧拉回路的算法Fleury算法算法,能不走桥就不走桥能不走桥就不走桥 (1) (1) 任取任取v0 0V( (G) ),令令P0 0v0 0。(2) (2) 设设Piv0 0e1 1v1 1e2 2eivi已经行遍,按下面方法来从已经行遍,按下面方法来从 E( (G)-)-e1 1, ,e2 2,ei 中选取中选取ei+1+1: (a) (a) ei+1+1与与vi相关联;相关联;
13、 ( (b) b) 除非无别的边可供行遍,否则除非无别的边可供行遍,否则ei+1+1不应该为不应该为 GiG-e1 1, ,e2 2,ei 中的桥。中的桥。(3)(3)当当(2)(2)不能再进行时,算法停止。不能再进行时,算法停止。 说明说明可以证明,当算法停止时所得简单回路可以证明,当算法停止时所得简单回路Pmv0 0e1 1v1 1e2 2emvm( (vmv0 0) )为为G中一条欧拉回路。中一条欧拉回路。FleuryFleury算法示例算法示例下图是给定的欧拉图下图是给定的欧拉图G。某人用某人用Fleury算法求算法求G中的欧拉回路时,中的欧拉回路时,走了简单回路走了简单回路v2 2e
14、2 2v3 3e3 3v4 4e1414v9 9e1010v2 2e1 1v1 1e8 8v8 8e9 9v2 2之后之后( (观看他的错误观看他的错误走法走法) ),无法行遍了,试分析在哪步他犯了错误,无法行遍了,试分析在哪步他犯了错误? ? 解答解答 此人行遍此人行遍v8 8时犯了能不走桥就不走桥时犯了能不走桥就不走桥的错误,因而他没行遍出欧拉回路。的错误,因而他没行遍出欧拉回路。当他走到当他走到v8 8时,时,G-e2 2, ,e3 3, ,e1414, ,e1010, ,e1 1, ,e8 8 为下图所示。为下图所示。此时此时e9 9为该图中的桥,而为该图中的桥,而e7 7, ,e11
15、11均不是桥,均不是桥,他不应该走他不应该走e9 9,而应该走而应该走e7 7或或e1111,他没他没有走,所以犯了错误。注意,此人在行有走,所以犯了错误。注意,此人在行遍中,在遍中,在v3 3遇到过桥遇到过桥e3 3,v1 1处遇到过桥处遇到过桥e8 8,但当时除桥外他无别的边可走,所以但当时除桥外他无别的边可走,所以当时均走了桥,这是不会犯错误的。当时均走了桥,这是不会犯错误的。15.2 15.2 哈密顿图哈密顿图q历史背景:哈密顿周游世界问题与哈密顿图历史背景:哈密顿周游世界问题与哈密顿图哈密顿图哈密顿图 经过图(有向图或无向图)中经过图(有向图或无向图)中所有顶点一次且仅一次的通路所有
16、顶点一次且仅一次的通路称为称为哈密顿通路哈密顿通路。经过图中。经过图中所有顶点一次且仅一次的回路所有顶点一次且仅一次的回路称称为为哈密顿回路哈密顿回路。具有哈密顿回路的图称为。具有哈密顿回路的图称为哈密顿图哈密顿图,具有哈,具有哈密顿通路但不具有哈密顿回路的图称为密顿通路但不具有哈密顿回路的图称为半哈密顿图半哈密顿图。平凡图。平凡图是哈密顿图。是哈密顿图。说明说明哈密顿通路是图中生成的初级通路,哈密顿通路是图中生成的初级通路,哈密顿回路是生成的初级回路。哈密顿回路是生成的初级回路。判断一个图是否为哈密顿图,就是判断能否将图中所有顶点判断一个图是否为哈密顿图,就是判断能否将图中所有顶点都放置在一
17、个初级回路都放置在一个初级回路( (圈圈) )上,但这不是一件易事。上,但这不是一件易事。与判断一个图是否为欧拉图不一样,到目前为止,人们还没与判断一个图是否为欧拉图不一样,到目前为止,人们还没有找到哈密顿图简单的充分必要条件。有找到哈密顿图简单的充分必要条件。例题例题(1)(2)(1)(2)是哈密顿图。是哈密顿图。(3)(3)是半哈密顿图。是半哈密顿图。(4)(4)既不是哈密顿图,也不是半哈密顿图。既不是哈密顿图,也不是半哈密顿图。定理定理15.6 15.6 设无向图设无向图G 是哈密顿图,对于任意是哈密顿图,对于任意V1 1 V,且且V1 1,均均有有p( (G- -V1 1)|)|V1
18、1| | 其中,其中,p( (G- -V1 1) )为为G- -V1 1的连通分支数。的连通分支数。 证明证明 设设C为为G中任意一条哈密顿回路,中任意一条哈密顿回路,易知,当易知,当V1 1中顶点在中顶点在C上均不相邻时,上均不相邻时,p( (C- -V1 1) )达到最大值达到最大值| |V1 1| |,而当而当V1 1中顶点在中顶点在C上有彼此相邻的情况时,上有彼此相邻的情况时,均有均有p( (C- -V1 1) )| |V1 1| |,所以有所以有 p( (C- -V1 1)|)|V1 1| |。而而C是是G的生成子图,所以,有的生成子图,所以,有p( (G- -V1 1)p( (C-
19、 -V1 1)|)|V1 1| |。说明说明本定理的条件是哈密顿图的必要条件,但不是充分条件。本定理的条件是哈密顿图的必要条件,但不是充分条件。可以验证彼得松图满足定理中的条件,但不是哈密顿图。可以验证彼得松图满足定理中的条件,但不是哈密顿图。若一个图不满足定理中的条件,它一定不是哈密顿图。若一个图不满足定理中的条件,它一定不是哈密顿图。推论推论 推论推论 设无向图设无向图G 是半哈密顿图,对于任意的是半哈密顿图,对于任意的V1 1 V且且V1 1,均有均有 p( (G- -V1 1)|)|V1 1|+1 |+1 证明证明 设设P是是G中起于中起于u终于终于v的哈密顿通路,的哈密顿通路,令令G
20、 G(u, ,v)()(在在G的顶点的顶点u, ,v之间加新边之间加新边) ),易知易知G 为哈密顿图,为哈密顿图,由定理由定理15.615.6可知,可知,p( (G - -V1 1)|)|V1 1| |。因此,因此,p( (G- -V1 1) ) p( (G - -V1 1-(-(u, ,v) p( (G - -V1 1)+1)+1 | |V1 1|+1 |+1 在下图中给出的三个图都是二部图。它们中的哪些是哈密顿在下图中给出的三个图都是二部图。它们中的哪些是哈密顿图?哪些是半哈密顿图?为什么?图?哪些是半哈密顿图?为什么?易知互补顶点子集易知互补顶点子集V1 1 a, ,f V2 2 b,
21、 ,c, ,d, ,e 设此二部图为设此二部图为G1 1,则则G1 1 。p( (G1 1- -V1 1) )4|4|V1 1| |2 2,由定理及其推论可知,由定理及其推论可知,G1 1不是哈密顿图,不是哈密顿图,也不是半哈密顿图。也不是半哈密顿图。 设图为设图为G2 2,则则G2 2 ,其中其中V1 1 a, ,g, ,h, ,i, ,c ,V2 2 b, ,e, ,f, ,j, ,k, ,d ,易知,易知,p( (G2 2- -V1 1) )| |V2 2| |6|6|V1 1| |5 5,由定理可知,由定理可知,G2 2不是哈密顿图,不是哈密顿图,但但G2 2是半哈密顿图。是半哈密顿图
22、。baegjckhfid为为G2 2中一条哈密顿通路。中一条哈密顿通路。设图为设图为G3 3。G3 3 ,其中其中V1 1 a, ,c, ,g, ,h, ,e ,V2 2 b, ,d, ,i, ,j, ,f ,G3 3中存在哈密顿回路。中存在哈密顿回路。如如 abcdgihjefa,所以所以G3 3是哈密顿图。是哈密顿图。 q哈密顿通路是经过图中所有顶点的一条初级通路。哈密顿通路是经过图中所有顶点的一条初级通路。q哈密顿回路是经过图中所有顶点的初级回路。哈密顿回路是经过图中所有顶点的初级回路。 q对于二部图还能得出下面结论:对于二部图还能得出下面结论: 一般情况下,设二部图一般情况下,设二部图
23、G ,| |V1 1|V2 2| |,且且| |V1 1|2|2,| |V2 2|2|2,由定理及其推论可以得出下面结论:由定理及其推论可以得出下面结论:(1) (1) 若若G是哈密顿图,则是哈密顿图,则| |V1 1| | |V2 2| |。(2) (2) 若若G是半哈密顿图,则是半哈密顿图,则| |V2 2| | |V1 1|+1|+1。(3) (3) 若若| |V2 2|V1 1|+2|+2,则则G G不是哈密顿图,也不是半哈密顿图。不是哈密顿图,也不是半哈密顿图。 设设G是是n阶无向连通图。证明:若阶无向连通图。证明:若G中有割点或桥,则中有割点或桥,则G不是哈密不是哈密顿图。顿图。证
24、明证明(1)(1)证明证明若若G中有割点,则中有割点,则G不是哈密顿图。不是哈密顿图。设设v为连通图为连通图G中一个割点,则中一个割点,则V v 为为G中的点割集,而中的点割集,而p( (G- -V )2)21 1| |V | |G不是哈密顿图。不是哈密顿图。(2)(2)证明证明若若G中有桥,则中有桥,则G不是哈密顿图。不是哈密顿图。设设G中有桥,中有桥,e( (u, ,v) )为其中的一个桥。为其中的一个桥。若若u, ,v都是悬挂点,则都是悬挂点,则G为为K2 2,K2 2不是哈密顿图。不是哈密顿图。若若u, ,v中至少有一个,比如中至少有一个,比如u,d( (u)2)2,由于由于e与与u关
25、联,关联,e为桥,为桥,所以所以G- -u至少产生两个连通分支,于是至少产生两个连通分支,于是u为为G中割点。中割点。由由(1)(1)的讨论可知,的讨论可知,G不是哈密顿图。不是哈密顿图。 设设G是是n阶无向简单图,若对于阶无向简单图,若对于G中任意不相邻的顶点中任意不相邻的顶点vi, ,vj,均均有有d( (vi)+)+d( (vj)n-1 -1 (15.1)(15.1)则则G中存在哈密顿通路。中存在哈密顿通路。 证明证明 首先证明首先证明G是连通图。是连通图。否则否则G至少有两个连通分支,至少有两个连通分支,设设G1 1, ,G2 2是阶数为是阶数为n1 1, ,n2 2的两个连通分支,的
26、两个连通分支,设设v1 1V( (G1 1) ),v2 2V( (G2 2) ),因为因为G是简单图,所以是简单图,所以dG( (v1 1)+)+dG( (v2 2) )dG1 1( (v1 1)+)+dG2 2( (v2 2)n1 1-1+-1+n2 2-1-1n-2-2这与这与(15.1)(15.1)矛盾,所以矛盾,所以G必为连通图。必为连通图。下面证下面证G中存在哈密顿通路。中存在哈密顿通路。设设v1 1v2 2vl为为G中用中用“扩大路径法扩大路径法”得到的得到的“极大路径极大路径”,即即的始点的始点v1 1与终点与终点vl不与不与外的顶点相邻。显然有外的顶点相邻。显然有ln。 (1)
27、(1)若若ln,则则为为G中哈密顿通路。中哈密顿通路。(2)(2)若若ln,这说明这说明不是哈密顿通路,不是哈密顿通路,即即G中还存在着中还存在着外的顶点。外的顶点。但可以证明但可以证明G中存在经过中存在经过上所有顶点的圈上所有顶点的圈。( (a)a) 若若v1 1与与vl相邻,即相邻,即( (v1 1, ,vl)E( (G) ),则则(v1 1, ,vl) )为满足要求的圈。为满足要求的圈。 ( (b)b)若若v1 1与与vl不相邻,设不相邻,设v1 1与与上的上的vi1 1v2 2, ,vi2 2,vik相邻相邻( (k2)2)( (否则否则 d( (v1 1)+)+d( (vl)1+)1
28、+l-2=-2=l-1-1n-1-1,这与这与(15.1)(15.1)矛盾矛盾) )此时,此时,vl至少与至少与vi2 2,vik相邻的顶点相邻的顶点vi2-12-1,vik-1-1之一相邻之一相邻( (否则否则 d( (v1 1)+)+d( (vl)k+ +l-2-(-2-(k-1)-1)l-1-1n-1-1) )设设vl与与vir -1-1相邻(相邻(22rk),),见下图所示。见下图所示。于是,回路于是,回路Cv1 1v2 2vir -1-1vlvlr -1-1vivirv1 1过过上的所有顶点。上的所有顶点。( (c)c)下面证明存在比下面证明存在比更长的路径。更长的路径。因为因为l
29、n,所以所以C外还有顶点,由外还有顶点,由G的连通性可知,的连通性可知,存在存在vl+1+1V( (G)-)-V( (C) )与与C上某顶点上某顶点vt相邻,见下图所示。相邻,见下图所示。删除边删除边( (vt-1-1, ,vt) )得路径得路径 vt-1-1v1 1virvlvir-1-1vtvl+1+1比比长度大长度大1 1,对对 上的顶点重新排序,使其成为上的顶点重新排序,使其成为 v1 1v2 2vlvl+1 1,对对 重复重复( (a)a)(c)(c),在有限步内一定得到在有限步内一定得到G的哈密顿通路。的哈密顿通路。推论推论 设设G为为n( (n3)3)阶无向简单图,若对于阶无向简
30、单图,若对于G中任意两个不相邻的顶中任意两个不相邻的顶点点vi, ,vj,均有均有 d( (vi)+)+d( (vj)n (15.2)(15.2)则则G中存在哈密顿回路,从而中存在哈密顿回路,从而G为哈密顿图。为哈密顿图。 证明证明 由定理可知,由定理可知,G中存在哈密顿通路,中存在哈密顿通路,设设v1 1v2 2vn为为G中一条哈密顿通路,中一条哈密顿通路,若若v1 1与与vn相邻,设边相邻,设边e( (v1 1, ,vn) ),则则e 为为G中哈密顿回路。中哈密顿回路。若若v1 1与与vn不相邻,应用不相邻,应用(15.2)(15.2),同定理证明中的,同定理证明中的(2)(2)类似,可证
31、明类似,可证明存在过存在过上各顶点的圈,上各顶点的圈,此圈即为此圈即为G中的哈密顿回路。中的哈密顿回路。 设设u, ,v为为n阶无向图阶无向图G中两个不相邻的顶点,且中两个不相邻的顶点,且d( (u)+)+d( (v)n,则则G为哈密顿图当且仅当为哈密顿图当且仅当G(u, ,v) )为哈密顿图为哈密顿图( ( (u, ,v) )是加的新是加的新边边) )。 证明证明( (略略) )。 在在某某次次国国际际会会议议的的预预备备会会议议中中,共共有有8 8人人参参加加,他他们们来来自自不不同同的的国国家家。已已知知他他们们中中任任何何两两个个无无共共同同语语言言的的人人中中的的每每一一个个,与与其
32、其余余有有共共同同语语言言的的人人数数之之和和大大于于或或等等于于8 8,问问能能否否将将这这8 8个个人人排排在在圆圆桌桌旁旁,使其任何人都能与两边的人交谈。使其任何人都能与两边的人交谈。 解答解答 设设8 8个人分别为个人分别为v1 1, ,v2 2,v8 8,作无向简单图作无向简单图G ,其中其中V v1 1, ,v2 2,v8 8 , vi, ,vjV,且且ij,若若vi与与vj有共同语言,就在有共同语言,就在vi, ,vj之间连无向边之间连无向边( (vi, ,vj) ),由此组成边集合由此组成边集合E,则则G为为8 8阶无向简单图,阶无向简单图, viV,d( (vi) )为与为与
33、vi有共同语言的人数。有共同语言的人数。由已知条件可知,由已知条件可知, vi, ,vjV且且ij,均有均有d( (vi)+)+d( (vj)8)8。由定理的推论可知,由定理的推论可知,G中存在哈密顿回路,中存在哈密顿回路,设设Cvi1 1vi2 2vi8 8为为G中一条哈密顿回路,中一条哈密顿回路,按这条回路的顺序安排座次即可。按这条回路的顺序安排座次即可。 若若D为为n( (n2)2)阶竞赛图,则阶竞赛图,则D中具有哈密顿通路。中具有哈密顿通路。 证明证明 对对n作归纳法。作归纳法。n2 2时,时,D的基图为的基图为K2 2,结论成立。结论成立。设设nk时结论成立。现在设时结论成立。现在设
34、nk+1+1。设设V( (D) ) v1 1, ,v2 2,vk, ,vk+1+1 。令令D1 1D- -vk+1+1,易知易知D1 1为为k阶竞赛图,阶竞赛图,由归纳假设可知,由归纳假设可知,D1 1存在哈密顿通路,存在哈密顿通路,设设1 1v 1 1v 2 2v k为其中一条。为其中一条。下面证明下面证明vk+1+1可扩到可扩到1 1中去。中去。若存在若存在v r(1(1rk) ),有有 E( (D) ),i1,2,1,2,r -1-1,而而 E( (D) ),见左图所示,见左图所示,则则v 1 1v 2 2v r-1-1vk+1+1v rv k为为D中哈密顿通路。中哈密顿通路。否则否则
35、i1,2,1,2,k ,均有均有 E( (D) ),见右图所示,见右图所示,则则 为为D中哈密顿通路。中哈密顿通路。下图所示的三个图中哪些是哈密顿图?哪些是半哈密顿图?下图所示的三个图中哪些是哈密顿图?哪些是半哈密顿图? (1)(1)存在哈密顿回路,所以存在哈密顿回路,所以(1)(1)为哈密顿图。为哈密顿图。(2)(2)取取V1 1 a, ,b, ,c, ,d, ,e ,从图中删除从图中删除V1 1得得7 7个连通分支,个连通分支, 由定理和推论可知,不是哈密顿图,也不是半哈密顿图。由定理和推论可知,不是哈密顿图,也不是半哈密顿图。(3)(3)取取V1 1 b, ,e, ,h ,从图中删除从图
36、中删除V1 1得得4 4个连通分支,由定理可知,个连通分支,由定理可知,它不是哈密顿图。但存在哈密顿通路,所以是半哈密顿图。它不是哈密顿图。但存在哈密顿通路,所以是半哈密顿图。 15.3 15.3 带权图与货郎担问题带权图与货郎担问题 给定图给定图G (G为无向图或有向图为无向图或有向图) ),设,设W:ER( (R为实为实数集数集) ),对,对G中任意的边中任意的边e( (vi, ,vj)()(G为有向图时,为有向图时,e ),设设W( (e) )wij,称实数称实数wij为边为边e上的权,并将上的权,并将wij标注标注在边在边e上,称上,称G为为带权图带权图,此时常将带权图,此时常将带权图
37、G记作记作 。设设G G, 称称W( (e) )为为G 的权,并记作的权,并记作W( (G ) ),即即 W( (G ) )带权图应用的领域是相当广泛的,许多图论算法都是针带权图应用的领域是相当广泛的,许多图论算法都是针对带权图的。对带权图的。货郎担问题货郎担问题q设有设有n个城市,城市之间均有道路,道路的长度均大于或等于个城市,城市之间均有道路,道路的长度均大于或等于0 0,可能是,可能是(对应关联的城市之间无交通线)。一个旅行商(对应关联的城市之间无交通线)。一个旅行商从某个城市出发,要从某个城市出发,要经过每个城市一次且仅一次经过每个城市一次且仅一次,最后回到出,最后回到出发的城市,问他
38、如何走才能使他发的城市,问他如何走才能使他走的路线最短走的路线最短?这就是著名的这就是著名的旅行商问题旅行商问题或或货郎担问题货郎担问题。q这个问题可化归为如下的图论问题。这个问题可化归为如下的图论问题。设设G ,为一个为一个n阶完全带权图阶完全带权图Kn,各边的权非负,且各边的权非负,且有的边的权可能为有的边的权可能为。求求G G中一条最短的哈密顿回路中一条最短的哈密顿回路,这就是,这就是货郎担问题的数学模型。货郎担问题的数学模型。q此问题中不同哈密顿回路的含义:此问题中不同哈密顿回路的含义:将图中生成圈看成一个哈密顿回路,即不考虑始点将图中生成圈看成一个哈密顿回路,即不考虑始点( (终点终
39、点) )的区的区别以及顺时针行遍与逆时针行遍的区别。别以及顺时针行遍与逆时针行遍的区别。 下图为下图为4 4阶完全带权图阶完全带权图K4 4。求出它的不同的哈密顿回路,并指求出它的不同的哈密顿回路,并指出最短的哈密顿回路。出最短的哈密顿回路。解答解答 由于货郎担问题中不同哈密顿回路的含义可知,求哈密顿由于货郎担问题中不同哈密顿回路的含义可知,求哈密顿回路从任何顶点出发都可以。下面先求出从回路从任何顶点出发都可以。下面先求出从a a点出发,考虑顺点出发,考虑顺时针与逆时针顺序的不同的哈密顿回路。时针与逆时针顺序的不同的哈密顿回路。C1 1abcda C2 2abdca C3 3acbdaC4 4
40、acdbaC5 5adbcaC6 6adcba带权图的说明带权图的说明qn阶完全带权图中共存在阶完全带权图中共存在( (n-1)!/2-1)!/2种不同的哈密顿回路,经种不同的哈密顿回路,经过比较,可找出最短哈密顿回路。过比较,可找出最短哈密顿回路。qn4 4时,时, 有有3 3种不同哈密顿回路。种不同哈密顿回路。n5 5时,时, 有有1212种,种,n6 6时,时, 有有6060种,种,n7 7时,时, 有有360360种,种,n1010时,有时,有59!=1 814 40059!=1 814 400种,种,。q由此可见货郎担问题的计算量是相当大的。由此可见货郎担问题的计算量是相当大的。q对
41、于货郎担问题,人们一方面还在寻找好的算法,另一方面对于货郎担问题,人们一方面还在寻找好的算法,另一方面也在寻找各种近似算法。也在寻找各种近似算法。 基本要求基本要求q深刻理解欧拉图与半欧拉图的定义及判别定理。深刻理解欧拉图与半欧拉图的定义及判别定理。q会用会用Fleury算法求出欧拉图中的欧拉回路。算法求出欧拉图中的欧拉回路。q深刻理解哈密顿图及半哈密顿图的定义。深刻理解哈密顿图及半哈密顿图的定义。q会用破坏哈密顿图应满足的某些必要条件的方法判断某些会用破坏哈密顿图应满足的某些必要条件的方法判断某些图不是哈密顿图。图不是哈密顿图。q会用满足哈密顿图的充分条件的方法判断某些图是哈密顿会用满足哈密顿图的充分条件的方法判断某些图是哈密顿图。图。q严格地分清哈密顿图必要条件和充分条件,千万不能将必严格地分清哈密顿图必要条件和充分条件,千万不能将必要条件当充分条件,同样地,也不能将充分条件当成必要要条件当充分条件,同样地,也不能将充分条件当成必要条件。条件。