图论课件第四章_欧拉图与哈密尔顿图_第1页
图论课件第四章_欧拉图与哈密尔顿图_第2页
图论课件第四章_欧拉图与哈密尔顿图_第3页
图论课件第四章_欧拉图与哈密尔顿图_第4页
图论课件第四章_欧拉图与哈密尔顿图_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 1 图论及其应用图论及其应用应用数学学院应用数学学院 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 2第四章第四章 欧拉图与哈密尔顿图欧拉图与哈密尔顿图主要内容主要内容一、欧拉图与中国邮路问题一、欧拉图与中国邮路问题二、哈密尔顿图二、哈密尔顿图三、度极大非哈密尔顿图与三、度极大非哈密尔顿图与TSP问题问题教学时数教学时数安排安排8学时讲授本章内容学时讲授本章内容四、超哈密尔顿图问题四、超哈密尔顿图问题 0.8 1 0.6 0

2、.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 3本次课主要内容本次课主要内容(一一)、欧拉图及其性质、欧拉图及其性质(二二)、Fleury算法算法(三三)、中国邮路问题、中国邮路问题欧拉图与中国邮路问题欧拉图与中国邮路问题 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 4 1、欧拉图的概念、欧拉图的概念(一一)、欧拉图及其性质、欧拉图及其性质 (1)、问题背景、问题背景-欧拉与哥尼斯堡七桥问题欧拉与哥尼斯堡七桥问题 结论:在一个点线连接的图形中,如果每个顶点关联结论:在一个点线连接的图形中,如

3、果每个顶点关联偶数条边,并且点与点之间有路可行,则从某点出发,偶数条边,并且点与点之间有路可行,则从某点出发,经过每条边一次且仅一次,可以回到出发点。经过每条边一次且仅一次,可以回到出发点。 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 5 哥尼斯堡城哥尼斯堡城(位于德国北部位于德国北部), 在欧拉的生活与图论历在欧拉的生活与图论历史中扮演着非常重要角色。因为它,产生了著名的欧拉史中扮演着非常重要角色。因为它,产生了著名的欧拉图定理,因为它,产生了图论。图定理,因为它,产生了图论。 注:注:一笔画一笔画-中国中国古老的古老的民间游戏

4、民间游戏 要求:对于一个图要求:对于一个图G, G, 笔不离纸笔不离纸, , 一笔画成一笔画成. . (2)、欧拉图概念、欧拉图概念 定义定义1 对于连通图对于连通图G,如果,如果G中存在经过每条边的闭中存在经过每条边的闭迹,则称迹,则称G为欧拉图,简称为欧拉图,简称G为为E图。欧拉闭迹又称为图。欧拉闭迹又称为欧拉环游,或欧拉回路。欧拉环游,或欧拉回路。欧拉图欧拉图41324132非欧拉图非欧拉图有欧拉迹有欧拉迹非欧拉图非欧拉图无欧拉迹无欧拉迹1234 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 6 2、欧拉图的性质、欧拉图的性质

5、 定理定理1 下列陈述对于非平凡连通图下列陈述对于非平凡连通图G是等价的:是等价的: (1) G是欧拉图;是欧拉图; (2) G的顶点度数为偶数;的顶点度数为偶数; (3) G的边集合能划分为圈。的边集合能划分为圈。 证明证明: (1)(2) 由由(1),设,设 C是欧拉图是欧拉图G的任一欧拉环游,的任一欧拉环游,v是是G中任中任意顶点,意顶点,v在环游中每出现一次,意味在在环游中每出现一次,意味在G中有两条不中有两条不同边与同边与v关联,所以,在关联,所以,在G中与中与v关联的边数为偶数,即关联的边数为偶数,即v的度数为偶数,由的度数为偶数,由v的任意性,即证明的任意性,即证明(2)。 (2

6、)(3) 由于由于G是连通非平凡的且每个顶点度数为偶数,所以是连通非平凡的且每个顶点度数为偶数,所以G中至少存在圈中至少存在圈C1,从从G中去掉中去掉C1中的边,得到中的边,得到G的生成的生成 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 7子图子图G1,若若G1没有边,则没有边,则(3)成立。否则,成立。否则,G1的每个非平的每个非平凡分支是度数为偶数的连通图,于是又可以抽取一个圈。凡分支是度数为偶数的连通图,于是又可以抽取一个圈。反复这样抽取,反复这样抽取,E(G)最终划分为若干圈。最终划分为若干圈。 (3)(1) 设设C1是是

7、G的边划分中的一个圈。若的边划分中的一个圈。若G仅由此圈组成,仅由此圈组成,则则G显然是欧拉图。显然是欧拉图。 否则,由于否则,由于G连通,所以,必然存在圈连通,所以,必然存在圈C2,它和它和C1有有公共顶点。于是,公共顶点。于是,C1CC2 2是一条含有是一条含有C C1 1与与C C2 2的边的欧拉的边的欧拉闭迹,如此拼接下去,得到包含闭迹,如此拼接下去,得到包含G G的所有边的一条欧拉的所有边的一条欧拉闭迹。即证闭迹。即证G G是欧拉图。是欧拉图。 推论推论1 连通图连通图G是欧拉图当且仅当是欧拉图当且仅当G的顶点度数为偶。的顶点度数为偶。 推论推论2 连通非欧拉图连通非欧拉图G存在欧拉

8、迹当且仅当存在欧拉迹当且仅当G中只有两中只有两个顶点度数为奇数。个顶点度数为奇数。 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 8 例例1 下面图中谁是欧拉图?谁是非欧拉图但存在欧拉下面图中谁是欧拉图?谁是非欧拉图但存在欧拉迹?谁是非欧拉图且不存在欧拉迹?迹?谁是非欧拉图且不存在欧拉迹?G1G2G3 解:解:G1是欧拉图;是欧拉图;G2是非欧拉图,但存在欧拉迹;是非欧拉图,但存在欧拉迹;G3中中不存在欧拉迹。不存在欧拉迹。 例例2 证明:若证明:若G和和H是欧拉图,则是欧拉图,则 是欧拉图。是欧拉图。G H 0.8 1 0.6 0

9、.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 9 证明:首先证明:对任意证明:首先证明:对任意u V(G), v V(H),有:有:( )( )( , )d ud vd u v 事实上,设事实上,设z是是u的任意一个邻点,一定有的任意一个邻点,一定有(u, v)的一个的一个邻点邻点(z, v),反之亦然。同理,对于反之亦然。同理,对于v的任意一个邻点的任意一个邻点w,一定有一定有(u, v)的一个邻点的一个邻点(u, w), 反之亦然。即反之亦然。即: (u, v)在乘在乘积图中邻点个数等于积图中邻点个数等于u在在G中邻点个数与中邻点个数与v在在H中邻点

10、个中邻点个数之和。数之和。 所以,所以,G ,H是欧拉图,那么是欧拉图,那么 顶点度数为偶数。顶点度数为偶数。G H 其次证明:其次证明: 是连通的。是连通的。G H1122( , ),(,)()u vu vV G H 由于由于G, H都是欧拉图,所以都连通。设最短的都是欧拉图,所以都连通。设最短的(u1, u2)路路 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 10最短的最短的(v1, v2)路分别为:路分别为:1 122ku x xx u1122mv y yy v那么,由乘积图的定义:在乘积图中有路:那么,由乘积图的定义:在乘

11、积图中有路:111112121222(,)(,)(,)(,)(,)(,)(,)kmu vx vxvuvuyuyuv 这样,我们证明了这样,我们证明了 是连通的且每个顶点度数为偶是连通的且每个顶点度数为偶数。即它是欧拉图。数。即它是欧拉图。G H(二二)、Fleury算法算法 该算法解决了在欧拉图中求出一条具体欧拉环游的方该算法解决了在欧拉图中求出一条具体欧拉环游的方法。方法是尽可能避割边行走。法。方法是尽可能避割边行走。 1、 算法算法 (1)、 任意选择一个顶点任意选择一个顶点v0,置置w0=v0; 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0

12、0.5 1 n 11 (2)、 假设迹假设迹wi=v0e1v1eivi已经选定,那么按下述方已经选定,那么按下述方法从法从E-e1,e2,ei中选取边中选取边ei+1: 1)、 ei+1与与vi+1相关联;相关联; 2)、除非没有别的边可选择,否则、除非没有别的边可选择,否则 ei+1不能是不能是 Gi=G-e1,e2,ei的割边。的割边。 (3)、 当当(2)不能执行时,算法停止。不能执行时,算法停止。 例例3 在下面欧拉图在下面欧拉图G中求一条欧拉回路。中求一条欧拉回路。dcbafeg图图Ghji 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0

13、0.5 1 n 12 解:解:dcbafeg图图Ghji 例例4 某博物馆的一层布置如下图,其中边代表走廊,某博物馆的一层布置如下图,其中边代表走廊,结点结点e是入口,结点是入口,结点g是礼品店,通过是礼品店,通过g我们可以离开博物我们可以离开博物馆。请找出从博物馆馆。请找出从博物馆e进入,经过每个走廊恰好一次,最进入,经过每个走廊恰好一次,最后从后从g处离开的路线。处离开的路线。afedcbihgj 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 13 解:图中只有两个奇度顶点解:图中只有两个奇度顶点e和和g,因此存在起点为因此存在

14、起点为e,终终点为点为g的欧拉迹。的欧拉迹。 为了在为了在G中求出一条起点为中求出一条起点为e,终点为终点为g的欧拉迹,在的欧拉迹,在e和和g间添加一条平行边间添加一条平行边mafedcbihgjm 用用Fleury算法求出欧拉环游为:算法求出欧拉环游为: emgcfabchbdhgdjiejge 所以:解为:所以:解为:egjeijdghdbhcbafcg 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 14 证明:令证明:令Wn=v0e1v1envn为由为由Fleury算法得到的一条算法得到的一条G中迹。中迹。 定理定理1 若若G

15、是欧拉图,则是欧拉图,则G中任意用中任意用Fleury算法作出的算法作出的迹都是迹都是G的欧拉环游。的欧拉环游。 2、算法证明、算法证明 由由Fleury算法,算法,dGn(vn)=0,所以,所以,vn=v0,否则否则, dGn(vn) 为奇为奇 设设Wn 不是不是G的欧拉环游,于是可令:的欧拉环游,于是可令:( )0 ,nGSv dvSVS 容易知道:容易知道:,nSvS 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 15 令令vm是是Wn在在S中的最后一个顶点。中的最后一个顶点。SS1mevmvm+1vn 首先,首先, 中边一定

16、都是中边一定都是Wn中边。若不然,设中边。若不然,设,S S,neS SeW但 设设e=uv, u S, 那么,那么,dGn(v)0,矛盾!矛盾! 其次,由其次,由vm是是Wn在在S中的最后一个顶点,知:中的最后一个顶点,知:1,mmGS Se 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 16 即即em+1是是Gm的割边。的割边。 设设e是是Gm中与中与vm关联的另外一条边。那么,由关联的另外一条边。那么,由F算法,它算法,它必然为必然为GmS的割边。的割边。 但是,但是,GmS=GnS,所以,所以,GmS中每个点为偶数,从中每个

17、点为偶数,从而没有割边,矛盾!而没有割边,矛盾!SS1mevmvm+1vne 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 17 设设G=(n, m)是欧拉图是欧拉图 由由Fleury算法知:算法需要算法知:算法需要m次循环;次循环; 算法中主要运算是判断:算法中主要运算是判断: ,该判,该判断的时间复杂性是断的时间复杂性是n2数量级的。数量级的。()()?iiGeG 所以所以Fleury算法时间复杂性是:算法时间复杂性是:O(n2m) 是好算法。是好算法。 例例4 证明:若证明:若G有有2k0个奇数顶点,则存在个奇数顶点,则存在k

18、条边不重条边不重的迹的迹Q1,Q2,Qk,使得:,使得:12()()()()kE GE QE QE Q 证明:不失一般性,只就证明:不失一般性,只就G是连通图进行证明。是连通图进行证明。 3、算法复杂性分析、算法复杂性分析 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 18 设设G=(n, m)是连通图。令是连通图。令vl,v2,,vk,vk+1,v2k是是G的所的所有奇度点。有奇度点。12()()()()kE GE QE QE Q 在在vi与与vi+k间连新边间连新边ei得图得图G*(1ik).ik).则则G G* *是欧拉图,是

19、欧拉图,因此,由因此,由FleuryFleury算法得欧拉环游算法得欧拉环游C.C. 在在C中删去中删去ei (1ik).得得k条边不重的迹条边不重的迹Qi (1ik): 例例5 设设G是非平凡的欧拉图,且是非平凡的欧拉图,且v V(G)。证明:。证明:G的每条具有起点的每条具有起点v的迹都能扩展成的迹都能扩展成G的欧拉环游当且仅当的欧拉环游当且仅当G-v是森林。是森林。 证明:证明:“必要性必要性” 若不然,则若不然,则G-v有圈有圈C。 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 19 考虑考虑G1=G-E(G)的含有顶点的含

20、有顶点v的分支的分支H。 由于由于G是非平凡欧拉图,所以是非平凡欧拉图,所以G1的每个顶点度数为偶数,的每个顶点度数为偶数,从而,从而,H是欧拉图。是欧拉图。 H是欧拉图,所以存在欧拉环游是欧拉图,所以存在欧拉环游T. 对于对于T,把它看成,把它看成v为起点和终点的一条欧拉迹,显然不能扩充为为起点和终点的一条欧拉迹,显然不能扩充为G的欧拉的欧拉环游。这与条件矛盾!环游。这与条件矛盾! “充分性充分性” 若不然,设若不然,设Q=(v, w)是是G的一条不能扩充为的一条不能扩充为G的欧拉环游的欧拉环游的最长迹,显然的最长迹,显然v = w,且且Q包含了与包含了与v关联的所有边。即关联的所有边。即Q

21、是一是一条闭迹。条闭迹。 于是,于是,G-v包含包含G-Q且且G-Q的每个顶点度数为偶数的每个顶点度数为偶数. 于是,于是,G-Q的非平凡分支是欧拉图,说明有圈,即的非平凡分支是欧拉图,说明有圈,即G-v有有圈,这与条件矛盾圈,这与条件矛盾. 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 20(三三)、中国邮路问题、中国邮路问题 1962年,中国数学家管梅谷提出并解决了年,中国数学家管梅谷提出并解决了“中国邮路问题中国邮路问题” 1、问题、问题 邮递员派信的街道是边赋权连通图。从邮局出发,每条街道邮递员派信的街道是边赋权连通图。从邮

22、局出发,每条街道至少行走一次,再回邮局。如何行走,使其行走的环游路程最至少行走一次,再回邮局。如何行走,使其行走的环游路程最小?小? 如果邮路图本身是欧拉图,那么由如果邮路图本身是欧拉图,那么由Fleury算法,可得到他的算法,可得到他的行走路线。行走路线。 如果邮路图本身是非欧拉图,那么为得到行走环游,必须重如果邮路图本身是非欧拉图,那么为得到行走环游,必须重复行走一些街道。于是问题转化为如何重复行走街道?复行走一些街道。于是问题转化为如何重复行走街道? 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 21 2、管梅谷的结论、管梅谷

23、的结论 定理定理2 若若W是图是图G中一条包含所有边的闭途径,则中一条包含所有边的闭途径,则W在在这样的闭途径中具有最短的长度当且仅当下列两个条件被这样的闭途径中具有最短的长度当且仅当下列两个条件被满足:满足: (1) 每一条边最多重复经过一次;每一条边最多重复经过一次; (2) 在在G的每一个圈上,重复经过的边的条数不超过圈长的每一个圈上,重复经过的边的条数不超过圈长的一半。的一半。 证明:证明:“必要性必要性” 首先,设首先,设G是连通非欧拉图,是连通非欧拉图,u与与v是是G的两个奇度顶点,的两个奇度顶点,把连接把连接u与与v的路上的边改为的路上的边改为2重边,则路中的点的度数奇偶重边,则

24、路中的点的度数奇偶性没有改变,仍然为偶数,但性没有改变,仍然为偶数,但u与与v的度数由奇数变成了偶数。的度数由奇数变成了偶数。如果对如果对G中每对奇度点都如此处理,则最终得到的图为欧拉中每对奇度点都如此处理,则最终得到的图为欧拉图。设该图为图。设该图为G1. 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 22 其次,对其次,对G1作修改:作修改: 如果在如果在G1中,边中,边e重复数大于重复数大于2,则在则在G G1 1中删掉中删掉2 2条重复的条重复的e e边后,所得之图仍然是包含边后,所得之图仍然是包含G G的欧拉图。的欧拉图。

25、 在在G1中,对每组平行边都做上面的处理,最后得到一个重中,对每组平行边都做上面的处理,最后得到一个重复边数最多为复边数最多为1的包含的包含G的欧拉图的欧拉图G2。 这说明,若这说明,若W是包含是包含G的所有边的欧拉环游,则的所有边的欧拉环游,则G中每条中每条边至多在边至多在W里出现两次。这就证明了里出现两次。这就证明了(1). 又设又设C是是G2中任意一个圈,在该圈中,如果有平行边条数中任意一个圈,在该圈中,如果有平行边条数超过该圈长度的一半,那么可以把该圈中平行边改为非平行超过该圈长度的一半,那么可以把该圈中平行边改为非平行边,而把非平行边改为平行边,如此修改,得到的图仍然是边,而把非平行

26、边改为平行边,如此修改,得到的图仍然是包含包含G的欧拉图,但对应的欧拉环游长度减小了。的欧拉图,但对应的欧拉环游长度减小了。 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 23 这就是说,只要对这就是说,只要对G2的每个圈都作上面的修改,最后得到的每个圈都作上面的修改,最后得到的图仍然为包含的图仍然为包含G的欧拉图,而最后的图正好满足的欧拉图,而最后的图正好满足(2). “充分性充分性” 我们证明:任何两条包含我们证明:任何两条包含G中所有边的闭途径中所有边的闭途径W1与与W2,如果满足定理如果满足定理2的两个条件,则它们有相同的长

27、度。的两个条件,则它们有相同的长度。 设设Y1与与Y2分别表示分别表示W1与与W2中重复出现的边集合。中重复出现的边集合。 如果能够证明:如果能够证明:|Y1-Y2|=|Y2-Y1|, 那么那么d(W1)=d(W2). 断言断言1:GY的每个顶点度数必然为偶数。的每个顶点度数必然为偶数。 令:令:Y= (Y1-Y2) (Y2-Y1) 首先:对于首先:对于G中任意点中任意点v, 如果如果d G (v)是奇数,那么是奇数,那么Y1与与Y2中与中与v关联的边数均为奇数;关联的边数均为奇数; 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 2

28、4 如果如果d G (v)是偶数,那么是偶数,那么Y1与与Y2中与中与v关联的边数均为偶关联的边数均为偶数。数。 所以所以Y1与与Y2中与中与G中任意点关联的边数奇偶性相同。中任意点关联的边数奇偶性相同。 其次,设其次,设Y1与与Y2中与中与v关联的边数分别为关联的边数分别为y1与与y2,其中相其中相同的边数为同的边数为y0,那么,那么,Y中与中与v关联的边数为:关联的边数为: 10201202yyyyyyy 所以,所以,Y中与中与v关联的边数为偶数,说明关联的边数为偶数,说明 GY的每个顶的每个顶点度数必然为偶数。点度数必然为偶数。 断言断言2: |Y1-Y2|=|Y2-Y1| 由于由于GY

29、的每个顶点度数为偶数。所以,它的每个分支的每个顶点度数为偶数。所以,它的每个分支是欧拉图。因此,是欧拉图。因此, GY可以作不重圈分解。可以作不重圈分解。 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 25 由定理由定理2的条件的条件(2), Y1与与Y2在圈中的边数不能超过圈长的在圈中的边数不能超过圈长的一半,但圈中边不是属于一半,但圈中边不是属于Y1就是属于就是属于Y2,所以,在每个圈中,所以,在每个圈中,Y1-Y2与与Y2-Y1中边各占一半,即:中边各占一半,即:122112YYYYY 由此,证明了定理的充分性。由此,证明了定

30、理的充分性。 注注: (1)定理定理2的必要性证明过程实际上给出了求中国邮路的必要性证明过程实际上给出了求中国邮路问题的方法问题的方法.下面看一个例题。下面看一个例题。 例例5 求包含下图求包含下图G的一个最优欧拉环游。的一个最优欧拉环游。 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 26 解:由定理解:由定理2:v8v7v6v5v4v3v2v1v12v11v10v9Gv15v14v13v8v7v6v5v4v3v2v1v12v11v10v9Gv15v14v13 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5

31、 2 1 0.5 0 0.5 1 n 27 修改后得:修改后得:v8v7v6v5v4v3v2v1v12v11v10v9Gv15v14v13 由由Fleury算法得可得到具体的最优欧拉环游。算法得可得到具体的最优欧拉环游。 3、非负权值的赋权图的最优欧拉环游、非负权值的赋权图的最优欧拉环游 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 28 对于一般的具有非负权值的赋权图对于一般的具有非负权值的赋权图G来说,如何求一条来说,如何求一条包含包含G的边的最优欧拉环游?的边的最优欧拉环游? 其实,可以证明:一般问题和中国邮路问题的特殊情况其

32、实,可以证明:一般问题和中国邮路问题的特殊情况是等价的是等价的(定理定理2).也就是说:可以通过定理也就是说:可以通过定理2的求最优欧拉的求最优欧拉环游的方法来求一般情况下的最优欧拉环游。环游的方法来求一般情况下的最优欧拉环游。 所以,求一般非负权赋权图的最优欧拉环游步骤为:所以,求一般非负权赋权图的最优欧拉环游步骤为: (1)、用添加重复边的方法求、用添加重复边的方法求G的一个赋权母图的一个赋权母图G*,使:,使:(*)()( )e E GE Gw e尽可能小 (2)、用、用Fleury算法在算法在G*中求出欧拉环游。中求出欧拉环游。 0.8 1 0.6 0.4 0.2 0 x t 0 0.

33、5 1 1.5 2 1 0.5 0 0.5 1 n 29 注:步骤注:步骤(1)的好算法已经由的好算法已经由Edmons在在1973年给出。年给出。 例例6 如果一个非负权的边赋权图如果一个非负权的边赋权图G中只有两个奇度顶点中只有两个奇度顶点u与与v,设计一个求其最优欧拉环游的算法。设计一个求其最优欧拉环游的算法。 解:解: 1、 算法算法 (1)、 在在u与与v间求出一条最短路间求出一条最短路P; (最短路算法最短路算法) (2)、 在最短路在最短路P上,给每条边添加一条平行边得上,给每条边添加一条平行边得G的欧的欧拉母图拉母图G*; (3)、 在在G的欧拉母图的欧拉母图G* 中用中用Fleury算法求出一条欧拉算法求出一条欧拉环游。环游。 2、 算法证明算法证明 0.8 1 0.6 0.4 0.2 0 x t 0 0.5 1 1.5 2 1 0.5 0 0.5 1 n 30 定理:用上面方法求出的欧拉环游是最优欧拉环游。定理:用上面方法求出的欧拉环游是最优欧拉环游。 证明:设证明:设u与与

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论