第15章欧拉图与哈密顿图离散数学中国地质大学本科生课程本章内容15.1欧拉图15.2哈密顿图15.1欧拉图历史背景--哥尼斯堡七桥问题欧拉图是一笔画出的边不重复的回路。通路:设G为无向标定图,G中顶点与边的交替序列Г=vi0ej1vi1ej2vi2…ejivil称为vi0到vil的通路,其中,vi0,vil分别称为Г的始点与终点。回路:若vi0=vil,则称通路为回路。简单通路:通路中,若Г的所有边各异;简单回路:简单通路中,若vi0=vil;初级通路或路径:若Г的所有顶点(除vi0与vij可能相同外)各异,所有边也各异;初级回路或圈:初级通路或路径中,若vi0=vil,15.1欧拉图欧拉图欧拉通路:通过图(无向图或有向图)中所有边一次且仅一次行遍图中所有顶点的通路;欧拉回路:通过图中所有边一次并且仅一次行遍所有顶点的回路。欧拉图:具有欧拉回路的图;半欧拉图:具有欧拉通路而无欧拉回路的图。举例欧拉图半欧拉图无欧拉通路欧拉图无欧拉通路无欧拉通路无向欧拉图的判定定理定理15.1无向图G是欧拉图当且仅当G是连通图,且G中没有奇度顶点。定理15.2无向图G是半欧拉图当且仅当G是连通的,且G中恰有两个奇度顶点。有向欧拉图的判定定理定理15.3有向图D是欧拉图当且仅当D是强连通的且每个顶点的入度都等于出度。定理15.4有向图D是半欧拉图当且仅当D是单向连通的,且D中恰有两个奇度顶点,其中一个的入度比出度大1,另一个的出度比入度大1,而其余顶点的入度都等于出度。举例有向欧拉图的判定定理定理15.5G是非平凡的欧拉图当且仅当G是连通的且为若干个边不重的圈的并。例15.1例15.1设G是非平凡的且非环的欧拉图,证明:(1)λ(G)≥2。(2)对于G中任意两个不同顶点u,v,都存在简单回路C含u和v。证明(1)由定理15.5可知,e∈E(G),存在圈C,e在C中,因而p(G-e)=p(G),故e不是桥。由e的任意性λ(G)≥2,即G是2边-连通图。例15.1例15.1设G是非平凡的且非环的欧拉图,证明:(1)λ(G)≥2。(2)对于G中任意两个不同顶点u,v,都存在简单回路C含u和v。证明(2)u,v∈V(G),u≠v,由G的连通性可知,u,v之间必存在路径Г1,设G=G-E(Г1),则在G中u与v还必连通,否则,u与v必处于G的不同的连通分支中,这说明在Г1上存在G中的桥,这与(1)矛盾。于是在G中存在u到v的路径Г2,显然Г1与Г2边不重,这说明u,v处于Г1∪Г2形成的简单回路上。求欧拉图中欧拉回路的算法Fleury算法,能不走桥就不走桥(1)任取v0∈V(G),令P0=v0。(2)设Pi=v0e1v1e2…eivi已经行遍,按下面方法来从E(G)-{e1,e2,…,ei}中选取ei+1:(a)ei+1与vi相关联;(b)除非无别的边可供行遍,否则ei+1不应该为Gi=G-{e1,e2,…,ei}中的桥。(3)当(2)不能再进行时,算法停止。Fleury算法示例例15.2对于欧拉图G,某人用Fleury算法求G中的欧拉回路时,走了简单回路v2e2v3e3v4e14v9e10v2e1v1e8v8e9v2之后,无法行遍了,试分析在哪步他犯了错误?解答此人行遍v8时犯了能不走桥就不走桥的错误,因而他没行遍出欧拉回路。当他走到v8时,G-{e2,e3,e14,e10,e1,e8}为下图所示。此时e9为该图中的桥,而e7,e11均不是桥,他不应该走e9,而应该走e7或e11,他没有走,所以犯了错误。例15.2解答:此人行遍v8时犯了能不走桥就不走桥的错误,因而他没行遍出欧拉回路。当他走到v8时,G-{e2,e3,e14,e10,e1,e8}为下图所示。注意:此人在行遍中,在v3遇到过桥e3,v1处遇到过桥e8,但当时除桥外无别的边可走,所以当时均走了桥,这是不会犯错误的。对于欧拉图G,某人用Fleury算法求G中的欧拉回路时,走了简单回路v2e2v3e3v4e14v9e10v2e1v1e8v8e9v2之后,无法行遍了,试分析在哪步他犯了错误?15.2哈密顿图历史背景:哈密顿周游世界问题与哈密顿图哈密顿图定义15.2经过图(有向图或无向图)中所有顶点一次且仅一次的通路称为哈密顿通路。经过图中所有顶点一次且仅一次的回路称为哈密顿回路。具有哈密顿回路的图称为哈密顿图,具有哈密顿通路但不具有哈密顿回路的图称为半哈密顿图。平凡图是哈密顿图。说明哈密顿通路是图中生成的初级通路,哈密顿回路是生成的初级回路。判断一个图是否为哈密顿图,就是判断能否将图中所有顶点都放置在一个初级回路(圈)上,但这不是一件易事。与判断一个图是否为欧拉图不一样,到目前为止,人们还没有找到哈密顿图简单的充分必要条件。例题(1)(2)是哈密顿图。(3)是半哈密顿图。(4)既不是哈密顿图,也不是半哈密顿图。定理15.6定理15.6设无向图G=V,E是哈密顿图,对于任意V1V,且V1≠,均有p(G-V1)≤|V1|其中,p(G-V1)为G-V1的连通分支数。证明设C为G中任意一条哈密顿回路,易知,当V1中顶点在C上均不相邻时,p(C-V1)达到最大值|V1|,而当V1中顶点在C上有彼此相邻的情况时,均有p(C-V1)<|V1|,所以有p(C-V1)≤|V1|。而C是G的生成子图,所以,有p(G-V1)≤p(C-V1)≤|V1|。说明本定理的条件是哈密顿图的必要条件,但不是充分条件。可以验证彼得松图满足定理中的条件,但不是哈密顿图。若一个图不满足定理中的条件,它一定不是哈密顿图。推论推论设无向图G=V,E是半哈密顿图,对于任意的V1V且V1≠,均有p(G-V1)≤|V1|+1证明设P是G中起于u终于v的哈密顿通路,令G=G∪(u,v)(在G的顶点u,v之间加新边),易知G为哈密顿图,由定理15.6可知,p(G-V1)≤|V1|。因此,p(G-V1)=p(G-V1-(u,v))≤p(G-V1)+1≤|V1|+1例15.3例15.3在下图中给出的三个图都是二部图。它们中的哪些是哈密顿图?哪些是半哈密顿图?为什么?易知互补顶点子集V1={a,f}V2={b,c,d,e}设此二部图为G1,则G1=V1,V2,E。p(G1-V1)=4|V1|=2,由定理15.6及其推论可知,G1不是哈密顿图,也不是半哈密顿图。例15.3设图为G2,则G2=V1,V2,E,其中V1={a,g,h,i,c},V2={b,e,f,j,k,d},易知,p(G2-V1)=|V2|=6|V1|=5,由定理15.6可知,G2不是哈密顿图,但G2是半哈密顿图。baegjckhfid为G2中一条哈密顿通路。设图为G3。G3=V1,V2,E,其中V1={a,c,g,h,e},V2={b,d,i,j,f},G3中存在哈密顿回路。如abcdgihjefa,所以G3是哈密顿图。例15.3的说明哈密顿通路是经过图中所有顶点的一条初级通路。哈密顿回路是经过图中所有顶点的初级回路。对于二部图还能得出下面结论:一般情况下,设二部图G=V1,V2,E,|V1|≤|V2|,且|V1|≥2,|V2|≥2,由定理15.6及其推论可以得出下面结论:(1)若G是哈密顿图,则|V1|=|V2|。(2)若G是半哈密顿图,则|V2|=|V1|+1。(3)若|V2|≥|V1|+2,则G不是哈密顿图,也不是半哈密顿图。例15.4设G是n阶无向连通图。证明:若G中有割点或桥,则G不是哈密顿图。证明可用定理15.6证明。例15.4例15.4设G是n阶无向连通图。证明:若G中有割点或桥,则G不是哈密顿图。证明(1)证明若G中有割点,则G不是哈密顿图。设v为连通图G中一个割点,则V={v}为G中的点割集,而p(G-V)≥2>1=|V|由定理15.6可知G不是哈密顿图。(2)证明若G中有桥,则G不是哈密顿图。设G中有桥,e=(u,v)为其中的一个桥。若u,v都是悬挂顶点,则G为K2,K2不是哈密顿图。若u,v中至少有一个,比如u,d(u)≥2,由于e与u关联,e为桥,所以G-u至少产生两个连通分支,于是u为G中割点。由(1)的讨论可知,G不是哈密顿图。定理15.7定理15.7设G是n阶无向简单图,若对于G中任意不相邻的顶点vi,vj,均有d(vi)+d(vj)≥n-1(15.1)则G中存在哈密顿通路。证明首先证明G是连通图。否则G至少有两个连通分支,设G1,G2是阶数为n1,n2的两个连通分支,设v1∈V(G1),v2∈V(G2),因为G是简单图,所以dG(v1)+dG(v2)=dG1(v1)+dG2(v2)≤n1-1+n2-1≤n-2这与(15.1)矛盾,所以G必为连通图。定理15.7的推论推论设G为n(n≥3)阶无向简单图,若对于G中任意两个不相邻的顶点vi,vj,均有d(vi)+d(vj)≥n(15.2)则G中存在哈密顿回路,从而G为哈密顿图。证明由定理15.7可知,G中存在哈密顿通路,设Г=v1v2…vn为G中一条哈密顿通路,若v1与vn相邻,设边e=(v1,vn),则Г∪{e}为G中哈密顿回路。若v1与vn不相邻,应用(15.2),同定理15.7证明中的(2)类似,可证明存在过Г上各顶点的圈,此圈即为G中的哈密顿回路。例15.5例15.5在某次国际会议的预备会议中,共有8人参加,他们来自不同的国家。已知他们中任何两个无共同语言的人中的每一个,与其余有共同语言的人数之和大于或等于8,问能否将这8个人排在圆桌旁,使其任何人都能与两边的人交谈。解答设8个人分别为v1,v2,…,v8,作无向简单图G=V,E,其中V={v1,v2,…,v8},vi,vj∈V,且i≠j,若vi与vj有共同语言,就在vi,vj之间连无向边(vi,vj),由此组成边集合E,则G为8阶无向简单图,vi∈V,d(vi)为与vi有共同语言的人数。由已知条件可知,vi,vj∈V且i≠j,均有d(vi)+d(vj)≥8。由定理15.7的推论可知,G中存在哈密顿回路,设C=vi1vi2…vi8为G中一条哈密顿回路,按这条回路的顺序安排座次即可。哈密顿图是能将图中所有顶点都能安排在某个初级回路上的图。定理15.9定理15.9若D为n(n≥2)阶竞赛图,则D中具有哈密顿通路。证明对n作归纳法。n=2时,D的基图为K2,结论成立。设n=k时结论成立。现在设n=k+1。设V(D)={v1,v2,…,vk,vk+1}。令D1=D-vk+1,易知D1为k阶竞赛图,由归纳假设可知,D1存在哈密顿通路,设Г1=v1v2…vk为其中一条。例15.6下图所示的三个图中哪些是哈密顿图?哪些是半哈密顿图?(1)存在哈密顿回路,所以(1)为哈密顿图。(2)取V1={a,b,c,d,e},从图中删除V1得7个连通分支,由定理15.6和推论可知,不是哈密顿图,也不是半哈密顿图。(3)取V1={b,e,h},从图中删除V1得4个连通分支,由定理15.6可知,它不是哈密顿图。但存在哈密顿通路,所以是半哈密顿图。基本要求深刻理解欧拉图与半欧拉图的定义及判别定理。会用Fleury算法求出欧拉图中的欧拉回路。深刻理解哈密顿图及半哈密顿图的定义。会用破坏哈密顿图应满足的某些必要条件的方法判断某些图不是哈密顿图。会用满足哈密顿图的充分条件的方法判断某些图是哈密顿图。严格地分清哈密顿图必要条件和充分条件,千万不能将必要条件当充分条件,同样地,也不能将充分条件当成必要条件。作业习题十五2、6