定义75设图G的顶点非空真子集为V1V在G中一个端
最短路径问题网络分析毕业论文(可编辑)
![最短路径问题网络分析毕业论文(可编辑)](https://img.taocdn.com/s3/m/9e0945b7294ac850ad02de80d4d8d15abe2300b5.png)
最短路径问题网络分析毕业论文摘要第一章绪论二十世纪中后期,随着计算机的出现和发展,图论的研究得到广泛重视,最短路径问题是图论中的一个典范问题,它已经被应用于众多领域.最短路径问题最直接的应用当数在地理信息领域,如:GIS 网络分析、城市规划、电子导航等.在交通咨询方面,寻找交通路网中两个城市间最短的行车路线就是最短路径问题的一个典型的例子.在网络通信领域,信息包传递的路径选择问题也与最短路径问题息息相关.举个例子,OPSF开放路由选择协议,每个OPSF路由器都维护一个描述自治系统拓扑结构的数据库,通过这个数据库构建最短路径树来计算路由表,从而跟踪自治系统范围内到每个目标的最短路径.在图象分割问题中,最短路径也有直接的应用:在语音识别中,一个主要的问题就是区别同音词,例如,to、two、too.为解决这个问题,我们需要建一个图,顶点代表可能的单词,边连接相邻的单词,边上的权代表相邻的可能行大小.这样图中的最短路径,就是对句子的最好解释.由于最短路径问题的广泛应用,很多学者都对此进行了深入的研究,也产生了一些经典的算法.近些年来,对最短路径研究的热度依然不减,并且时间复杂度降得越来越低.所以在本课题中我们将提出不仅是以前我们学习过的一些经典的算法,我们还将提出一些以前没有学习过的更有应用空间的算法.以及各算法之间的比较.最后还将把这些算法在现实中的应用最一些简单的介绍.第二章网络的最短路问题的基础知识2.1 图的基本概念(1)图定义:一个(无向)图G 是一个有序二元组(V,E),其中是顶点集,是边集,且是一个无序二元组,它表示该边连接顶点与.图1就是一个图说明:在保持图的点边关系不变的情况下,图形的位置、大小、形状都是无关紧要的.若,则称连接与;点和称为的顶点,称或与关联,与是邻接的顶点;如果两条边有一个公共顶点,则称这两条边是邻接的;(2)环定义:两个顶点重合为一点的边称为环如图图1中.图1(3)重边定义:如果有两条边的顶点是同一对顶点,则称这两条边为重边(如图1中与中有两条边相连).(4)孤立点定义:不与任何边关联的点称为孤立点(如图1中);(5)无环图定义:没有环的图称为无环图;(6)简单图:定义:既没有环也没有重边的图称为简单图.设G(V,E)是一个简单图,则显然有.(7)完全图定义:若上式中等号成立,则说明该图中每对顶点间恰有一条边相连,称此图为完全图.(8)补图定义:一个简单图的补图是与有相同顶点的简单图,且中两个点相邻当且仅当它们在中不相邻.(9)二分图定义:一个图G(V,E),若存在V 的一个分划(,),使得每条边有一个顶点在中,另一个在中,则称为二分图.(10)子图、支撑子图定义:设有两个图,,如果,,则称为的支撑子图.(11)点导出子图定义:设有图G(V,E),是的非空子集,若以为点集,以两点均在中的所有边为边集的子图称为由导出的的子图,记为,简称点导出子图.(12)边导出子图定义:若是的一个非空子集,则以为边集以中边的所有顶点作为点集的子图,称为由导出的的子图,记为,简称边导出子图.(13)度:定义:图中顶点的度为与关联的边的数目(与关联的每个环算作两条边),记为.结论:设G(V,E)是一个图,则,即度数为奇数的顶点有偶数个.2.2有向图(1)有向图定义:一个有向图是一个有序二元组,其中是顶点集,称为的弧集,为一个有序二元组.称为连向的弧,为的出弧,的入弧;称为得尾,称为的头;称为的前继,称为的后继.图2就是一个有向图.图2(2)环定义:头和尾重合的弧称为环.(3)重弧定义:若两条弧有相同的头和尾,则称这两条弧为重弧.(4)简单有向图定义:没有环和重弧的有向图称为简单有向图‘(5)基图定义:把有向图中每条弧用边来代替,得到一个无向图,称为得基图.(6)完全有向图定义:设G(V,E)是一个简单有向图,则,若等号成立,则称这样的图为完全有向图.(7)出度、入度定义:有向图中顶点的出弧的数目称为的出度,记为;顶点入弧的数目称为的入度,记为.结论:设G(V,E)是一有向图,则类似地可以定义有向图的子图,支撑子图,点,边导出之子图的概念.(8)网络定义:设是一个图,若对的每一条边都赋以一个实数,称为边的权,则连同边上的权称为一个网络,记为.同样可以定义有向网络.在此主要讨论网络上的各种优化问题.无向网络可以转化为有向网络,具体做法为:把无向网络中每条边代之以一对弧()和(),且两条弧的权都等于边的权.2.3连通性途径、迹、路定义:设有图 G(V,E),如果它的某些顶点与边可以排成一个非空的有限交错序列,这里该途径中边互不相同,则称为迹;如果顶点互不相同,则称它为路.显然路必为迹,但反之未必.闭路径定义:如果某途径至少含一条边,且起点与终点重合,则称它为一条闭途径.类似可定义闭迹和回路(又称圈).注意:若为简单图,则两个顶点间边若存在必是唯一的,故由到的一条途径可以用顶点序列表示.连通图:定义:图中若存在一条从顶点到的途径,则称与是连通的.如果图中任何两个顶点都是连通的,则称是连通图.例如,完全图是连通的.二分图,,则只要,中有一个大于1,则一定不是连通图.连通子图定义:如果是的子图,且是连通的,则称为的连通子图.极大连通子图定义:如果为的连通子图,且不存在连通子图,使是的子图.图的极大连通子图又称为的连通分支.有向途径定义:设有一个有向图,中某些顶点与弧组成的非空有限序列这里,,且,则称它为从到的有向途径.类似可定义有向迹,有向路,有向闭途径,有向闭迹,有向回路(有向圈).当是简单有向图时,从到的一条有向途径可简记为().强连通定义:中若既存在一条从顶点到的有向途径,又存在从到的有向途径,则称和是强连通的.如果中任意两顶点都是强连通的,则称是强连通的.强连通分支定义:的极大强连通子图称为强连通分支.注:若强连通,则恰有一个强连通分支.结论:若为有个连通分支的简单无向图,则的邻接矩阵为准对角矩阵若为有个强连通分支的简单有向图,则的邻接矩阵为准上三角矩阵2.4割集割边定义:设有图,是的一条边,如果从中删去,使它的连通分支数量增加1,则称是的割边.显然,的一条边是割边当且仅当该边不包含在的任何闭迹中.边割定义:设是的一个非空子集,,记,如果,且从中删去这些边后,的连通分支至少增加1,则称是的一个边割.割集定义:若是一个边割,且的任何真子集都不是边割,则称它为极小边割,的极小边割又称为割集.结论:任给图,设是图的圈,是图的割集,用表示的边集.如果,那么.弧割定义:设是一个有向图,记,如果,则从中删去这些弧以后,的强连通分支数至少增加1,称它为的一个弧割.的极小弧割称为有向割集.2.5最短路问题定义:所谓最短路径是指如果从图中某一顶点称为源点到达另一顶点称为终点的路径可能不止一条,如何找到一条有向路径使得沿此路径上各弧的权值总和达到最小.第三章网络的最短路问题的算法研究3.1最短路问题的提出某旅客要从杭州乘飞机前往奥地利的萨尔斯堡,因为他害怕乘飞机,所以要选择一条航线,使得在空中飞行的时间尽可能的少.问题是如何选择航线以达到要求.为此构造一个无向网络总可以化成有向网络,故下面只讨论有向网络的最短路问题.设是一有向网络,为中一条有向路,称为路的权或路长.现寻找网络中自某一指定顶点到另一指定顶点的最短有向路.3.2 Bellman最短路方程设有一个有向网络,.若用表示自顶点到顶点的最短有向路长,用表示弧()的长度,若,则定义,则对一切有且当且仅当弧在自顶点到顶点的最短有向路上.因为所有均表示自到的最短路长,因此这些最短路必有最后一条弧(),且该有向路上自到的一段也是最短路,故有Bellman最短路方程:即自点到各点最短路长度必满足Bellman最短路方程.反过来,Bellman最短路方程的解是自点到其余各点最短路的长度.3.3无负回路网络的最短有向路的Ford算法3.3.1 Ford算法的基本思想Ford算法的思想是逐次逼近,每次逼近求出网络从到其余各顶点的带某种约束的最短路,这里的约束是路中弧数.第一次逼近是从到其他任意顶点由一条弧组成的所有路中找一条最短路,记其长度为;第二次逼近是从到由不多于两条弧组成的所有路中找一条最短路,记其长度为.一般地,第次逼近是从到由不多于条弧组成的路中找一条最短的,记其长度为.因为中自到的最短路至多含个顶点, 条弧,所以最多次逼近即可. 即为中自到的最短路长.3.3.2 Ford算法的步骤为方便起见,定义.第一步置,,.第二步令.第三步若,停止;否则令,返回第二步.3.3.3实例求如下图所示网络中从顶点到其余各点的最短路.解求解过程如下:因此从到的最短路径分别为,,,,,路长分别为1,2,-3,0,2.3.4求正权网络中有向最短路的Dijkstra算法3.4.1Dijkstra算法的基本思想对网络中每个顶点赋以一个标号,用来记录从顶点到该顶点的最短路的长度(此时称为永久标号)或最短路长度的上界(此时称为暂时标号).算法开始时,只有顶点被赋予永久标号,其它顶点被赋予暂时标号.一般地,算法在被暂时标号的顶点中寻找一个顶点,其暂时标号最小,然后将赋予永久标号,且对其余暂时标号的顶点按方式修正其标号.算法在所有顶点均被赋予永久标号终止.3.4.2Dijkstra算法的理论依据对于中任一顶点,其永久标号是从顶点到该顶点的最短路的长度.对于中任一顶点,其暂时标号是从顶点出发,只经过中顶点到达该顶点的最短路的长度.3.4.3 Dijkstra算法的算法步骤最短路径问题是指在一个赋权图的两个指定节点和之间找出一条具有最小权的路.Dijkstra 算法是一个解最短路径问题的算法,这个算法不仅可以找到最短的,路径而且可以给出从到图中所有节点的最短路径.其基本步骤如下:1 设,对所有的节点来说,设,并将标号为0, ,为和w之间的权值距离.2按照每个未标号的节点w计算, ,表示点t 到点w 之间的权值距离 .若被修改了说明在当前得到的到w 的最优路径上t 和w 相邻用记录下来在所有中选择一个最小的即,未标号.将s 标号为, 表示节点到s的最优路径的长度为且与s 相邻.3 若终点v 已标号,则停止.得到一条从到v 的最优路径,否则,转向2再计算.3.4.4 Dijkstra算法的应用举例以具体实例说明Dijkstra 算法的具体应用.例 1. 利用Dijkstra 算法求图1 中节点A 到其它各节点的最优路径 202.9 3.218 4.4 3.5 3.2 4.516 Y 4.1 2.2 14 4.22 3.4 4.512 5.62.9 3 4.22.2 10 3.4 3.5 4 2.23 8 0 24 6 X 8 图1 101214相应的权值为:根据Dijkstra 算法的实现步骤其计算过程可归纳为表1 所示.从表1 中可以看出从到的最短路径为且到的距离为18.3 在求到最短路径的过程中到其余各点的最短路径也相应求出.若以计算一次为计算单位,则利用Dijkstra算法计算到最短路径时所需的计算次数15+14+13+ +2 119次表1采用Dijkstra 算法求解A到其他各节点最优路径的过程序号 A B C D E F G H I J K L M N O P1 - 4.2 3.42 - 4.2 3.4/A9.0 6.93 - 4.2/A - 8.6 8.3 6.94 - - - 8.6 8.3 6.9/C 11.9 10.95 - - - 8.5 8.3/B -10.3 11.2 10.96 - - - 8.6/B - - 11.5 10.3 11.2 10.97 - - - - - - 11.5 10.3/D 11.2 10.9 13.513.78 - - - - - - 11.5 - 11.2 10.9/F 13.5 13.713.19 - - - - - - 11.5 - -11.2/E - 13.5 13.713.110 - - - - - - 11.5/D - - - 13.5 13.713.111 - - - - - - - - - - 13.5 13.713.1/J16.112 - - - - - - - - - - 13.5/H 13.7 -18.0 16.113 - - - - - - - - - - - 13.7/H - 15.916.114 - - - - - - - - - - - - - 15.9/L16.1 18.715 - - - - - - - - - - - - - - 16.1/M18.33.4.5 Dijkstra算法的不足在现行电子地图中,网络模型的规模常常较大,节点数多达上千或上万,并且对网络模型的查询也要求实时性,因此Dijkstra 算法虽然在理论上是可行的,但在实际应用中不尽人意,当网络模型中节点数和边数较多的情况下,算法的计算量较大时间花费较多效率非常低.3.4.6 改进Dijkstra 算法的基本思想及实现表1 中的数值大多数是,都是无用运算,如果节点数量很大,将极其浪费运算时间.由于,节点是否在上次已经被计算出最短路径未知,当前节点是否与节点是否相连也未知,也就是未知,这时是已知的,故本次计算的到底是不是,取决于上一步数值和的数值,从表达式可以看出,只要这两个数值不都是,本次计算的就不会是,所以在上面Dijkstra 算法的实现步骤第2 步时,先判断一下,只要原来的, 的数值中至少有一个不是,才进行下面的计算,这样就保证了当预见是时,不对它进行计算,避免了大量无效的计算,提高了搜索效率.下面仍以一个具体实例来说明改进的Dijkstra算法的具体应用.例2 利用改进的Dijkstra 算法求图1中节点A到其他各节点的最优路径,此例的计算过程和Dijkstra 算法基本一致,只是表 1 中所有标记的部分在改进Dijkstra 算法中被省去了,利用改进的Dijkstra 算法计算到最短路径时所需计算次数为次,由此可见,改进的Dijkstra 算法确实减小了计算量在程序设计中,判断语句所花费的时间可以忽略,并不增大计算量.3.4.7 实验对比为了更好地说明改进的Dijkstra 算法的有效性,利用C语言自行编制了最短路径搜索程序并进行了仿真实验,采用自绘制的地图,共5 张,第一张图16个节点,共24条弧;第二张图32个节点,共55条弧;第三张图43个节点,共75条弧;第四张图62个节点,共111条弧;第五张图78个节点,共139条弧,计算结果如表2 所示.从表 2 可以看出,两种算法的计算量有很大的区别,改进的Dijkstra 算法较之经典Dijkstra 算法在计算量方面有很大幅度的减少,而且这种减少的程度在节点数目增加地图更大,更复杂时,会变得越来越明显.对于实际系统,由于地图都会很大,使用改进Dijkstra 算法的改进效果将非常显著.表2 改进Dijkstra 算法和经典Dijkstra 算法计算次数比较节点数经典Dijkstra 算法改进的Dijkstra 算法16 119 4739.5%32 465 13428.8%43 861 23427.2%62 1830 44124.1%78 2926 54018.5%注:表中的百分数表示改进算法计算量与经典算法计算量的百分比3.5 算法的问题和改进3.5.1算法的基本思想算法在人工智能中是一种典型的启发式搜索算法.通过选择合适的估价函数,指导搜索朝着最有希望的方向前进,以求得最优解. 算法中关键是求估价函数:其中, 是从起点到当前节点已付出的代价, 是从当前节点到目标节点的代价估计函数,必须保证其中是从当前点到目标点的实际最小代价.3.5.2算法的步骤算法的搜索步骤如下:1给起始节点标记,对它的没有标记过的子节点进行扩展;2对每一个子节点计算评价函数值,按评价值的大小进行排列,找出评价值最小的节点,并给它作标记,如果当前节点就是目标节点,则停止搜索;3 否则,对最新被标记的节点进行第2 步处理并记录最短路径.3.5.3算法分析算法是利用对问题的了解和对问题求解过程和解的了解,寻求某种有利于问题求解的启发信息,从而利用这些启发信息去搜索最优路径.它不用遍历整个地图,而是每一步搜索都根据启发函数朝着某个方向搜索.当地图很大很复杂时,它的计算复杂度大大优于Dijkstra 算法,是一种搜索速度非常快、效率非常高的算法.但是,相应的算法也有它的缺点.启发性信息是人为加入的,有很大的主观性,直接取决于操作者的经验,对于不同的情形要用不同的启发信息和启发函数,且他们的选取难度比较大,很大程度上找不到最优路径.下面通过一个具体加以实例说明.例3 利用算法求图1 中从点出发到点的最优路径.解:在本例中将评价函数中的取为当前节点到起始节点的最短距离,而取为当前节点到目标节点的欧氏距离,在应用算法时除采用上面Dijkstra 算法所用过的拓扑结构外,还应该再给定所有节点的坐标如各点坐标为0,13, 3,16, 3,11,….根据算法的具体实现步骤可求得从到的最短路径其距离是16.6.查看表1可知,用Dijkstra 算法搜索的最优路径是, 路径长度15.9 ,很明显算法没有找到最优路径,而且通过比较两条路径可以发现:当采用算法搜索路径时,从第二个节点就把最优路径舍弃了.3.5.4 算法改进思想及实现为了克服最优路径可能被轻易舍弃的缺点,本文提出采用多次搜索的方法,用增大计算量为代价来换取尽量多的最优路径备选结果.具体的方法如下:将经典算法搜索出原始最优路径中的节点依次进行封堵后,再按照经典算法搜索在每一次封堵情况下的最优路径.最后将这些新的最优路径与原始最优路径进行对比以便确定最后的最优路径.现举例说明改进算法的具体应用.例4.利用改进的算法求图1中从点出发到点的最优路径.1 按算法寻找路径得到: ,路径长度16.6;2 封闭此路径中节点后得到的最优路径为:, 路径长度15.9;3 封闭此路径中节点后得到的最优路径为: , 路径长度17.1;4 封闭此路径中节点后得到的最优路径为: ,路径长度17.2;5 封闭此路径中节点后得到的最优路径为: ,路径长度18.7;对前面求得的5 种路径长度进行对比,得到最优路径,其长度为15.9 ,从而将此路径定为改进算法求得的最优路径.查看表1可知此路径正是采用Dijkstra算法时求得的最优路径.3.5.5 实验对比为了进一步验证改进算法的有效性利,用C 语言自行编制了最短路径搜索程序并进行了仿真实验.以78个节点含1个起始节点,77个待规划节点的地图作为对象得到的仿真结果.采用经典算法对77个节点分别进行路径规划,有45个找到了最优路径而采用改进的算法对77个节点进行路径规划时,有68个找到了最优路径,有8个节点虽未找到最优路径但得到了比经典算法更短的路径,只有1个节点和经典算法结果一致.这充分说明改进的算法较之经典的算法在搜索最优路径的成功率方面具有明显的优势.3.6 结论本文对经典Dijkstra 算法和算法进行了改进,改进后的算法具有以下特点.1改进的Dijkstra 算法能在很大程度上节省计算量,提高路径规划的速度.2改进的算法虽在一定程度上增大了计算量但远远小于Dijkstra 算法的计算量, 却大大增大了搜索到最优路径的成功率.3.7 混合步长网络漫游最短路算法3.7.1引言网络最短路问题一直是网络理论与实践的重要研究课题之一,是在工农业生产及各项经济活动中非常具有实用价值的一门计算技术,是系统工程和运筹学研究的一个重要分枝.随着图与网络理论的不断发展与完善和计算技术、计算手段的不断进步,为新的网络最短路算法的研究提供了前提和条件.经过深入的研究探索和实践,本文提出一种任意路权网络最短路的新算法??混合步长网络漫游法.3.7.2 网络漫游法原理在一个给定的任意路权网络图中,为该网络的点集合,为该网络的弧集合,为网络各弧的权数集合.确定一个点作为漫游网络的起点,并记该点的漫游路长为零 ,其余各点的漫游路长 ,以此作为初始状态.之后,每一步都以当前漫游点的路长来修正其余相关连点的路长,并选择一个新的漫游点,如此往复,直至不再有可以漫游的点为止.若从起始点到任意点的直接路长为 (为网络的顶点数,若两点和之间没有直接的弧连接,则),则以修改各点的初始漫游路长, 作为第一步各点的漫游路长,并选择所对应的点作为第一步的漫游点,称之为当前漫游点.一般而言,经过步漫游到达第点,则第点为当前漫游点,该点的当前漫游路长为 .为寻找下一步的漫游点,要计算 ,并以作为点第步的漫游路长,选择点作为第步的漫游点,如此循环,直至各能够到达的点均已漫游过且各点已不存在更短的漫游路长时,漫游终止.同时得到了从起始点到各点的最短路.3.7.3网络漫游法的特点3.7.3.1 混合步长每次从当前漫游点寻找下一漫游点时,采用了算式,所以,下一漫游点的路长不只是第步中的最短路,而且是在第步、第步、…、第1步、第0步中的最短路,是当前步长内所有步数能够到达该点的最短路.3.7.3.2路长递减性由于采用了算式作为第点的第步的路长,它小于等于步之内任一步长的路长,具有递减性.3.7.3.3条件记忆性由第k步的当前漫游点寻找下一漫游点时,是在除当前点之外的其它点中寻找.其余的点分为两类,一类是还没有漫游过的点,它自然属于寻找的范围;另一类是已经漫游过的点,这类点分为两种情况,其一是该点记录的步步长之内的最短路值是该点作为漫游点时的路长,则该点不在寻找之列,即该点已漫游过这件事是在记忆之中的,其二是该点虽然已漫游过,但在其后的漫游中更新了该点漫游时的路长值,则该点在寻找范围之列,即对该点已漫游过这一事实失去记忆,如同没有漫游过的点一样.也就是说,若该点作为漫游点时的路长值一直保持为该点的最短漫游路长,则对该点保持记忆;若该点作为漫游点时的路长值已发生变化,则对该点的漫游失去记忆.3.7.4 网络漫游法的算法对于给定的任意路权网络,按照如下步骤进行网络漫游,只要网络中不含负回路,最终总可以求得从起始点到其所能到达的所有点的最短路.当然,也可以从终点反向漫游,以求得从网络的任意一点到终点的最短路.3.7.4.1 确定漫游起始状态若求从某点到其它各点的最短路,则以作为漫游的起始点(当前漫游点),并记该点的起始漫游路长为零,其余各点的漫游路长为无穷大(注:若求其它各点到终点的最短路,则以作为漫游起点,进行反向漫游即可).3.7.4.2 从当前漫游点向外探索计算从当前漫游点走到其它各点所产生的路长3.7.4.3确定各点新的漫游路长将各点的与其当前的最短路长进行比较,选取较小者作为该点新的漫游路长,即.3.7.4.4 作漫游标记当从本漫游点向外探索之后则对其作一标记,表示此点已漫游过.在以后的漫游中保持此标记,直到该点有更短的漫游路长出现时,则除去该点的漫游标志.3.7.4.5 确定新的漫游点在当前没有作漫游标记的点中,选取所对应的点作为新的漫游点.返回3.2继续漫游.。
第一章(图论的基本概念)
![第一章(图论的基本概念)](https://img.taocdn.com/s3/m/d7b8174fb307e87101f696a1.png)
第二节 图的顶点度和图的同构(4)
图序列:简单图的度序列. (d1, d 2 , , d p )(d1 d 2 d p ) 定理4 非负整数序列 是图序列当 p 且仅当 d i 是偶数,并且对一切整数k, 1 k p 1, 有
i 1
第二节 图的顶点度和图的同构(1)
定义1 设G是任意图,x为G的任意结点,与结点x关联的 边数(一条环计算两次)称为x的度数.记作deg(x)或d(x). 定义2 设G为无向图,对于G的每个结点x,若d(x)=K,则 称G为K正则的无向图.设G为有向图,对于G的每个结点 x,若d+(x)=d-(x), 则称G为平衡有向图.在有向图G中, 若 (G) (G) (G) (G) K , 则称G为K正则有向图. 定理1(握手定理,图论基本定理)每个图中,结点度数的 总和等于边数的二倍,即 deg(x) 2 E .
•
A
N
S
B
欧拉的结论 • 欧拉指出:一个线图中存在通过每边一次仅一次 回到出发点的路线的充要条件是: • 1)图是连通的,即任意两点可由图中的一些边连 接起来; • 2)与图中每一顶点相连的边必须是偶数. • 由此得出结论:七桥问题无解. 欧拉由七桥问题所引发的研究论文是图论的开 篇之作,因此称欧拉为图论之父.
xV
定理2 每个图中,度数为奇数的结点必定是偶数个.
第二节 图的顶点度和图的同构(2)
• 定理3 在任何有向图中,所有结点入度之和等于所有结 点出度之和. • 证明 因为每条有向边必对应一个入度和出度,若一个结 点具有一个入度或出度,则必关联一条有向边,因此,有向 图中各结点的入度之和等于边数,各结点出度之和也等 于边数. • 定义 度序列,若V(G)={v1,v2,…,vp},称非负整数序列 (d(v1),d(v2),…,d(vp))为图G的度序列.
图论1
![图论1](https://img.taocdn.com/s3/m/1dfdf06127d3240c8447ef89.png)
d<u,v> + d<v,w> ≥ d<u,w> 《定义》:在简单有向图中,若图中任何一 定义》 对结点间,至少有一点到另一结点是可达 的,则称此图是单侧连通的;如果两结 点均是互相可达的,则称是强连通的。 如果在图中略去边的方向,将它看成无向 图后,图是连通的,则称此图为弱连通 的. 强连通⇒单侧连通⇒弱连通
(10)闭路(自回路): 闭路(自回路):图中起始且终止于同一结 闭路 ): 点的边 (闭路的箭头方向是没有意义的 )例:
(11)多重边(平行边): 多重边(平行边):二个结点之间 多重边 ): 方向相同的二条(多条)边 例:
多重图,非多重 《定义》:含有多重边的图称为多重图 定义》 多重图 图称为线图 线图。 线图 简单图: 简单图。 简单图:无自回路的线图称为简单图。由定义可 简单图 见,简单图是没有自回路和多重边的图。 例:
图论不断发展,它在解决运筹学,网络理 论,信息论,控制论,博奕论以及计算 机科学等各个领域的问题时,显示出越 来越大的效果。 对于这样一门应用广泛的学科,其包含的 内容是丰富的,本篇我们只准备介绍基 本的概念和定理,为今后有关学科及课 程的学习和研究提供方便。 第七章 图论
§1图的基本概念
1.基本名词和定义 1.基本名词和定义 定义》 《定义》一个图G是一个三元组<V(G),E(G), ΦG>, 其中V(G)为有限非空结点(或叫顶点)集合, E(G)是边的集合, ΦG是从边集E到结点偶对集 合上的函数。 (1). V(G) ={V1,V2,…,Vn}为有限非空集合, Vi称为结点,简称V是点集。 (2). E(G)={e1,…,em}为有限的边集合,ei称为边。 。 每个边ei都有V中的结点对与之相对应,称E为边集。 。 即每条边是连结V中的某两个点的。
离散数学王元元习题解答 (9)
![离散数学王元元习题解答 (9)](https://img.taocdn.com/s3/m/25fa9a90dd88d0d233d46a13.png)
第三篇图论第八章图8.1 图的基本知识内容提要8.1.1 图的定义及有关术语定义8.1 图(graph)G由三个部分所组成:(1)非空集合V(G),称为图G的结点集,其成员称为结点或顶点(nodes or vertices)。
(2)集合E(G),称为图G的边集,其成员称为边(edges)。
I(3)函数ΨG:E(G)→(V(G),V(G)),称为边与顶点的关联映射(associatve mapping)。
这里(V(G),V(G))称为VG的偶对集,其成员偶对(pair)形如(u,v),u,v为结点,它们未必不同。
ΨG(e) = (u,v)时称边e关联端点u,v。
当(u,v)用作序偶时(V(G),V(G)) =V(G)⨯V(G),e称为有向边,e以u为起点,以v为终点, 图G称为有向图(directed graph);当(u,v)用作无序偶对时,(u,v) = (v,u),称e为无向边(或边),图G称为无向图(或图)。
图G常用三元序组< V(G),E(G),ΨG>,或< V,E,Ψ>来表示。
显然,图是一种数学结构,由两个集合及其间的一个映射所组成。
定义8. 2 设图G为< V,E,Ψ>。
(l)当V和E为有限集时,称G为有限图,否则称G为无限图。
本书只讨论有限图。
(2)当ΨG为单射时,称G为单图;当ΨG为非单射时,称G为重图,又称满足Ψ(e1) = Ψ(e2)的不同边e1,e2,为重边,或平行边。
(3)当Ψ(e)=(v,v)(或<v,v>)时,称e为环(loops)。
无环和重边的无向单图称为简单图。
当G为有限简单图时,也常用(n,m)表示图G,其中n = |V |,m = |E |。
(4)Ψ为双射的有向图称为有向完全图;对每一(u,v),u ≠v,均有e使Ψ(e)=(u,v)的简单图称为无向完全图,简称完全图,n个顶点的完全图常记作K n。
(5)在单图G中,Ψ(e)=(u,v)(或<u,v>)时,也用(u,v)(或<u,v>)表示边e,这时称u,v邻接e, u,v是e的端点(或称u为e的起点,v为e的终点);也称e关联结点u , v 。
图的基本概念与性质
![图的基本概念与性质](https://img.taocdn.com/s3/m/b1e736649b6648d7c1c74632.png)
第3章图的基本概念与性质一、概念图——图可以用集合的形式表示,即图可以表示为一个三元组,包含结点集、边集,以及边与结点对集间的映射.如果用结点对来表示边,则图可以表示成一个由结点集与边集组成的二元组.定义3.1.1图G是一个三元组<V(G),E(G),ϕG>,其中V(G)是一个非空的结点集(或称顶点集),E(G)是边集,ϕG是从边集E(G)到结点偶对(无序偶或有序偶)集上的函数.图定义中的结点偶对可以是有序的,也可以是无序的.有向边、端点——若图中的边e所对应的结点偶对是有序的,记为<a,b>,则称e是有向边(简称弧).a,b分别称为弧的始点与终点,并均称为e的端点.称e是关联于结点a 和b的,结点a和结点b是相、邻的,或称结点a和结点b是邻接的.无向边、端点——若图中的边e所对应的结点偶对是无序的,记为(a,b),则称e是无向边(简称棱).a,b称为e的端点.称e是关联于结点a和b的,结点a和结点b是相、邻的,或称结点a和结点b是邻接的.有向图——每一条边均为有向边的图称为有向图.无向图——每一条边均为无向边的图称为无向图.底图——如果把有向图中每条有向边都看作无向边,就得一个无向图,此无向图称为原有向图的底图.底图只表示出结点间的连接关系而没有表示出连接边的方向.弧立结点——图中不与任何相邻的结点称为弧立结点.零图——全由孤立结点构成的图称为零图.自回路(环)——关联于同一结点的一条边称为自回路或环.重边(平行边)——在有向图中,两结点间(包括结点自身间)若多于一条边,则称这几条边为重边或平行边.多重图——含有重边的图称为多重图.线图——非多重图称为线图.定义3.1.2(简单图)无自回路的线图称为简单图.定义3.1.3(结点的度数、最大度、最小度)图G=<V,E>中,与V中结点v(v∈V)相关联的边数,称为该结点的度数,记作为deg(v).记∆(G)= max{deg(v)| v∈V(G)},δ(G)= min{deg(v)| v∈V(G)},分别称为G=<V,E>的最大度和最小度.定义3.1.4(出度、入度、度数)在有向图中,对于任何结点v,以v为始点的边的条数称为结点v的引出次数(或出度);以v为终点的边的条数称为结点v的引入次数(或入度);结点v的引出次数和引入次数之和称为v的次数(或度数).定义3.1.5(二部图)设G=〈V,E>是n阶无向图,若能将V分成两个互不相交的子集V1与V2使得G中任一边的两端点都不在同一个V i(i=1,2)中,则称G为二部图.记G=<V1,V2,E>.定义3.1.6(完全图)简单图G=<V,E>中,若每一对结点间都有边相连,则称该图为完全图.有n个结点的无向完全图记为K n.定义3.1.7(k-正则图)若无向简单图中,每个结点的度均为某个固定整数k,则称该图为k-正则图.定义3.1.8(赋权图)赋权图G是一个三重组<V,E,g>或四重组<V,E,f,g>,其中V是结点集合,E是边的集合,f是定义在V上的函数,g是定义在E上的函数.定义3.1.9(补图)设图G=<V,E>有n个顶点,图H=<V,E’>也有同样的顶点,而E’是由n个结点的完全图的边删去E所得,则图H称为图G的补图,记为H=G,显然,G=H.定义3.1.10(子图、真子图、生成子图)设G=<V,E>和G’=<V’,E’>是两个图.(1)若V’⊆V且E’⊆E,则称G’是G的子图;(2)若V’⊂V或E’⊂E,则称G’是G的真子图;(3)若V’=V和E’⊆E,则称G’是G的生成子图;(4)若子图G’中没有孤立结点,G’由E’唯一确定,则称G’为由边集E’导出的子图;(5)若子图G’中,对V’中的任意两个结点u,v,当u,v∈V’时有[u,v]∈E’,则G’由V’唯一确定,则称G’为由结点集V’导出的子图.定义3.1.11(补图) 设G’=<V’,E’>是G=<V,E>的子图,若给定另外一个图G’’=<V’’,E’’>,使得E’’=E-E’,且V’’中仅包含E’’的边所关联的结点,则称G’’是子图G’的相对于G 的补图.定义3.1.12(同构) 设G=〈V,E>和G’=<V’,E’>是两个图,若存在从V到V’的双射函数f,使对任意[a,b]∈E,当且仅当[f(a),f (b)]∈E’,并且[a,b]和[f(a),f (b)]有相同的重数,则称G和G’是同构的.定义3.1.13(路径) 在图G=<V,E>中,设v0,v1,…,v n∈V,e1,e2,….,e n∈E,其中e i是关联于结点v i-1,v i的边,交替序列v0 e1 v1 e2…e n v n称为联结v0到v n的路径(或称路).v0与v n分别称为路的起点与终点,边的数目n称为路的长度.孤立点——长度为0的路定义为孤立点.简单路径——若序列中所有的边e1,e2,…., e n均互不相同,则称此路径为简单路径.基本路径——若序列中所有的点v0,v1,…,v n均互不相同,则称此路径是基本路径.回路——若v0=v n,即路径中的终点与始点相重合,则称此路径为回路.简单回路——没有相同边的回路称为简单回路.基本回路(圈)——各结点均互不相同的回路称为基本回路(或圈).奇圈(偶圈)——长度为奇(偶)数的圈称为奇(偶)圈.定义3.2.1(可达、连通)在图G=<V,E>中,设有结点v j与v k,若从v j到v k存在任何一条路径,则称结点v k从结点v j可达,也称结点v j与v k是连通的.定义3.2.2(连通图、非连通图、分离图)若G是平凡图或G中任意两个结点都是连通的,则称G是连通图,否则称G为非连通图或分离图.定义3.2.3(连通分支)设G=<V,E>是图,连通关系的商集为{V1,V2,…,V m},则其导出的子图G(V i)(i=1,2,…m)称为图G的连通分支(图),将图G的连通分支数记作W(G).定义3.2.4(短程线)设u与v是图G的两个结点,若u与v连通,则称u与v之间的长度最短的路为u与v之间的短程线,短程线的长度可作为结点u与v间的距离,记作d(u,v),其满足下列性质:d(u,v) ≥ 0,u=v时,d(u,v) =0 (非负性)d(u,v) = d(v,u) (对称性)d(u,v) + d(v,w) ≥d(u,w) (三角不等式)若u与v不连通,则通常记d(u,v) = ∞.定义3.2.5(单向连通、强连通、弱连通)在简单有向图中,如果在任何结点偶对中,至少从一个结点到另一个结点可达的,则称图G是单向(侧)连通的;如果在任何结点偶对中,两结点对互相可达,则称图G是强连通的;如果图的底图(在图G中略去边的方向,得到无向图)是连通的,则称图G是弱连通的.定义3.2.6(极大强连通子图、极大单向连通子图、极大弱连通子图、强分图、单向分图、弱分图) 在简单有向图G =<V ,E >中,G’是G 的子图,如G’是强连通的(单向连通的,弱连通的),且没有包含G’的更大的子图G’’是强连通的(单向连通的,弱连通的),则称G’是极大强连通子图(极大单向连通子图,极大弱连通子图)又叫强分图(单向分图,弱分图).定义3.2.7(点割集、割点) 设无向图G =<V ,E >为连通图,若有点集V 1⊂V ,使图G 删除了V 1的所有结点后,所得的子图是不连通图,而删除了V 1的任何真子集后,所得的子图是连通图,则称V 1是G 的一个点割集.若某个结点构成一个点割集,则称该结点为割点.定义3.2.8(点连通度) 若G 为无向连通图且不含Kn 为生成子图,则称k (G )=min{|V 1| ∣V 1是G 的一个点割集}为G 的点连通度(简称连通度).规定:完全图Kn 的点连通度为n ,n ≥1.非连通图的点连通度为0.若k (G ) ≥k ,则称G 为k -连通图.定义3.2.9(边割集、割边、桥) 设无向图G =<V ,E >为连通图,若有边集E 1⊂E ,使图G 删除了E 1的所有边后,所得的子图是不连通图,而删除了E 1的任何真子集后,所得的子图是连通图,则称E 1是G 的一个边割集.若某个边构成一个边割集,则称该结点为割边(或桥). 定义3.2.10(连通度) 若G 为无向连通图,则称λ(G )=min{|E 1| ∣E 1是G 的一个边割集}为G 的边连通度.规定:非连通图的边连通度为0.若λ(G ) ≥k ,则称G 为k 边-连通图.定义3.3.1(邻接矩阵) 设G =<V ,E >是一个简单图,其中V ={v 1,v 2,…, v n },则n 阶方阵A (G )=(a ij )称为G 的邻接矩阵.其中各元素⎪⎩⎪⎨⎧==ji v v v v a j i j i ij 不相邻或与相邻与01 定义3.3.2(可达性矩阵) 设G =<V ,E >是一个简单图,|V |=n ,假定G 的结点已编序,即V ={v 1,v 2,…, v n },定义一个n ⨯n 方阵P =(p ij ).其中⎪⎩⎪⎨⎧=不存在一条路与从至少存在一条路到从j i j i ij v v v v p 01 则称矩阵P 为图G 的可达性矩阵.最短路径的数学模型——给定一个网络N (有向或无向赋权图),u 0与v 0是N 中指点的两个顶点,在N 中找一条从u 0到v 0且权最小的路.规定N 中的一条路P 的权w (P )称为p 的长度.若N 中存在从u 到v 的路,则将N 中从u 到v 且权最小的路称为u 到v 的最短路,其长度称为u 到v 的距离,记为d N (u ,v ).二、定理定理3.1.1(握手定理) 设G 是一个图,其结点集合为V ,边集合为E ,则∑∈=V v E v ||2)deg(定理3.1.2 图中次数为奇数的结点有偶数个.定理3.1.3 在任何有向图中,所有的入度之和等于所有结点的出度之和.定理3.1.4 有n 个结点的无向完全图K n 的边数为n (n -1)/2.定理3.1.5 在具有n 个结点的简单图G =<V , E >中,若从结点v j 到结点v k 有一条路,则从结点v j 到结点v k 有一条长度不大于n -1的路.定理3.1.5推论在一个具有n个结点的图G=<V, E>中,如果从结点v j到结点v k有一条路,则从结点v j到结点v k必有一条长度小于n的通路.定理3.1.6在具有n个结点的图G=<V,E>中,如果经v有一条回路,则经v有一条长度不超过n的回路.定理3.1.6推论在具有n个结点的图G=<V,E>中,如果经v有一条简单回路,则经v 有一条长度不超过n的基本回路.定理3.2.1一个有向图是强连通的,当且仅当G中有一个回路,其至少包含每个结点一次.定理3.2.2在有向图G=〈V,E〉中,G的每一结点都在也只在一个强(弱)分图中.定理3.2.3在有向图G=〈V,E〉中,G的每一结点都处在一个或一个以上的单向分图中.定理3.2.4(Whitney)对于任何一个图G,有k(G) ≤λ (G) ≤δ(G)其中k(G)、λ (G)、δ(G)分别为G的点连通度、边连通度和最小度.定理3.2.5一个连通无向图G中的结点v是割点的充分必要条件是存在两个结点u与w,使得结点u与w的每一条路都通过v.三、方法1.两图同构的必要条件:(1)结点数相等;(2)边数相等;(3)度数相同的结点数相等.2.邻接矩阵运算特征(1)图G=<V,E>的邻接矩阵不唯一,而与V中的元素标定次序有关.对V中各元素不同的标定次序可得到同一图G的不同邻接矩阵.但这些邻接矩阵经过适当地交换行和列的次序,就从一个邻接矩阵变到另一个邻接矩阵.根据不同邻接矩阵所作的有向图都是同构的.因此,可选V元素的任一种标定次序所得出的邻接矩阵.(2)当有向线图代表关系时,邻接矩阵就可看作是一种关系矩阵.有向图是自反的,矩阵的对角线元素全为1.有向图是非自反的,矩阵的对角线元素全为0.有向图是对称的,对所有i和j,矩阵是对称的.有向图是反对称的,对所有i和j,矩阵是以主对角线对称的元素不可能同时为1.(3)零图的邻接矩阵的元素全为零,并称其为零矩阵.(4)图的每一顶点都有自回路而再无其它边时,图的邻接矩阵是单位矩阵.(5)设有向线图G=<V,E>的邻接矩阵是A,则A的逆图的邻接矩阵是A的转置矩阵.3.可达性矩阵的计算方法一般地,可以由图G的邻接矩阵A得到可达性矩阵P.即令B n=A+A2+…+A n,在从B n中将不为0的元素改为1,而为零的元素不变,这样改换的矩阵即为可达性矩阵P.也可以将矩阵A,A2,…,A n分别改为布尔矩阵A,A(2),…,A(n),简化计算,故P= A∨A(2)∨…∨A(n),其中A(i)表示在布尔运算下A的i次方.4.求最短路径的Dijkstra算法步骤(1)置l(u0)=0,对v∈V-{ u0},l(v)= +∞,S0 ={ u0},i=0.(2)对每个v∈ N G-Si(u i),用min{ l(v),l(u i)+ w(u i,v)}代替l(v).若l(v)取到l(u i)+w(u i,v),则在v旁边记下(u i).计算min(v∈G- S i ){ l(v)},并将达到最小值的这个顶点记为u i+1.置S i+1= S i⋃{ u i+1}.(3)若i=|G|-1,则算法停止,否则用置i 为i+1,并转入第(2)步.算法结束时,从u0到v的距离由最终的标号给出l(v),并且可根据各个顶点旁边的(u i)追回出从u0到v的最短路径.若为求某个特定的顶点v时,则可以在u j= v时使算法停止即求得结果.。
集合论与图论第十章 树
![集合论与图论第十章 树](https://img.taocdn.com/s3/m/96d4508f0408763231126edb6f1aff00bed570f5.png)
间添加一边,恰得一条回路(称T为最大无回路图); (5) T是连通图,但删去任一边后,便不连通(称T为
最小连通图)。
(6) T的每一对不同的顶点之间有唯一的一条路。
(n1-1)+(n2-1)+ ……+(n -1) =(n1+n2+……+n )= n-
10.1 树及其性质
定理10.2 在任一棵非平凡树T中,至少有两片树
叶。
证明方法:分而治之/反证法。
证明:
若T中只有一片树叶,则 d(vi)≥2(n1)+1=2n-1。
若T中没有树叶,则d(vi)≥2n。 均与d(vi)=2e=2(n-1)矛盾,所以在任
路与生成树的补必有一公共边,所以在r中
必存在一条边fT’; 对于树T(边集至少为
{ e1 ,…..., ei , f }),若用ei+1 代换f,得一棵新 树T1(边集至少为{e1 ,…..., ei , ei+1 }) 。则T1 的权W(T1)=W(T1)+W(ei+1)-W(f) 。
因为T为最小生成树,所以W(T)≤W(T1), 则W(ei+1)≥W(f);又根据T’生成法,自
给出图和生成树,求基本割集组和基本 回路组。
10.2 生成树与割集
四、树的基本变换 图10.4 1 定义10.8(树的基本变换)
设连通图G的生成树T,通过上述加一 弦,再删去一枝得到另一棵生成树,这 种变换称为树的基本变换。
2 定义10.9(距离)
而 记不为设d出连(T现通i, 在T图j)T。Gj的的边生数成称树为Ti和Ti和Tj,Tj的出距现离在,Ti
离散数学王元元习题解答
![离散数学王元元习题解答](https://img.taocdn.com/s3/m/065d36530242a8956aece41e.png)
第三篇图论第八章图图的基本知识内容提要8.1.1 图的定义及有关术语定义图(graph)G由三个部分所组成:(1)非空集合V(G),称为图G的结点集,其成员称为结点或顶点(nodes or vertices)。
(2)集合 E(G),称为图G的边集,其成员称为边(edges)。
I(3)函数ΨG:E(G)→(V(G),V(G)),称为边与顶点的关联映射(associatve mapping)。
这里(V(G),V(G))称为VG的偶对集,其成员偶对(pair)形如(u,v),u,v为结点,它们未必不同。
ΨG(e) = (u,v)时称边e关联端点u,v。
当(u,v)用作序偶时(V(G),V(G)) =V(G) ?V(G),e称为有向边,e以u为起点,以v为终点, 图G称为有向图(directed graph);当(u,v)用作无序偶对时,(u,v) = (v,u),称e为无向边(或边),图G称为无向图(或图)。
图G常用三元序组< V(G),E(G),ΨG>,或< V,E,Ψ>来表示。
显然,图是一种数学结构,由两个集合及其间的一个映射所组成。
定义8. 2 设图G为< V,E,Ψ>。
(l)当V和E为有限集时,称G为有限图,否则称G为无限图。
本书只讨论有限图。
(2)当ΨG 为单射时,称G为单图;当ΨG为非单射时,称G为重图,又称满足Ψ(e1) = Ψ(e2)的不同边e1,e2,为重边,或平行边。
(3)当Ψ(e)=(v,v)(或<v,v>)时,称e为环(loops)。
无环和重边的无向单图称为简单图。
当G为有限简单图时,也常用(n,m)表示图G,其中n = ?V ?,m = ?E ? 。
(4)Ψ为双射的有向图称为有向完全图;对每一(u,v),u ? v,均有e使Ψ(e)=(u,v)的简单图称为无向完全图,简称完全图,n个顶点的完全图常记作Kn。
(5)在单图G中,Ψ(e)=(u,v)(或<u,v>)时,也用(u,v)(或<u,v>)表示边e,这时称u,v邻接e, u,v是e的端点(或称u为e的起点,v为e的终点);也称e关联结点u , v 。
Hamilton图的若干判定条件
![Hamilton图的若干判定条件](https://img.taocdn.com/s3/m/5519751cf02d2af90242a8956bec0975f465a4ab.png)
Hamilton图的若⼲判定条件摘要Hamilton回路判断的充分必要条件是⾄今尚未解决的⼀个难题,本⽂探讨了⼀些Hamilton图的充分条件,必要条件,并根据Hamilton图的相关性质给出了若⼲种判定Hamilton图的⽅法,同时,也给出了判定⽅法相应的实例。
关键词Hamilton图;充要条件;判定⽅法;回路;简图AbstractThe sufficient and necessary condition for judging Hamiltonian graph has been an unsettled problem for a long time. This paper mainly concerns some sufficient condition and some necessary conditions, and gives some methods for judging Hamiltonian graph based on the properties of Hamiltonian graph. Meanwhile , some examples are given.Key wordsHamiltonian graph; the sufficient and necessary condition; methods of judgement ; cycle;simple graph⽬录1.引⾔ (1)2.Hamilton图的相关概念 (2)3.Hamilton图的性质 (3)4.Hamilton图的若⼲判定⽅法 (5)5.相关的应⽤实例 (7)5.1 典型例⼦ (7)5.2 简单实例 (8)5.3 判断Hamilton图-1 (8)5.4 判断Hamilton图-2 (8)5.5 Petersen图是⾮Hamilton图的⼀个证明 (11)参考⽂献 (13)谢辞 (14)Hamilton图的若⼲判定条件Judgement of Hamiltonian Graph1.引⾔1859年,英国数学家哈密顿(Hamilton)爵⼠提出了下列周游世界的游戏:在正⼗⼆⾯体的⼆⼗个顶点上依次标记伦敦,巴黎,莫斯科,华盛顿,北京,东京等世界著名⼤城市;正⼗⼆⾯体的棱(边)表⽰连接这些城市的路线,问:能否在图中做⼀次旅⾏,从顶点到顶点,沿着边⾏⾛,经过每个城市恰好⼀次之后再回到出发点?这个问题被称为Hamilton问题。
图论第三章
![图论第三章](https://img.taocdn.com/s3/m/2e1c1263783e0912a2162a39.png)
是G 的顶点割。
-3-
图论及其应用第三章 (2)k 顶点割:含有k 个元素的顶点割。 注:1)1 顶点割与割点是两个不同的概念。
u
{u} 是1 顶点割,但 u 不是割点
v
v 是割点,但 {v} 不是1 顶点割
2)G 连通且无环,则 v 是割点
(G v ) (G )
{v} 是1顶点割
-10-
图论及其应用第三章 (2)k 边割 {e}为1 边割 {e}为割边。
(3)G 的连通度 (G ) 定义如下:
min{ k | G 有 k 边割 }, G 是非平凡图 (G ) 0, G 是平凡图
注: 1) (G ) 0
G 平凡或不连通
2)G 是含有割边的连通图
( n ≥l )
(G ) 1 (G xy ) (G )
(G ) 1 (G x )
-14-
图论及其应用第三章 三. 连通度的基本结果
。 证明:(1)先证 。 若G 平凡或不连通,则
定理3.1
0
-17-
图论及其应用第三章
例5
G
(G ) ( 2 ), (G ) ( 3 ), (G ) ( 4 )
-18-
图论及其应用第三章 例6
A 4-edge-connected graph G such that G-{x1, x2, x3, x4} is connected
-19-
(G ) 1
-11-
图论及其应用第三章 3) (G ) k 0 G 的k 边割均为键
(4)k 连通图:若 (G ) k ,则称G 为k 边连通图 的。 注第三章 例4 1、分别找G1和G2两个边割; 2、给出它们的边连通度。 v2 v1 v5 v6 v9 v 7 v8 v4 G1 v3 v1 v3 G 2 v8 v2 v4 v5 v6 v7
图论及其应用
![图论及其应用](https://img.taocdn.com/s3/m/447724b805a1b0717fd5360cba1aa81144318fb3.png)
一个最小边割集。
连通度
定义:如果0<k≤λ(G),则称G是k-边连通图。
定理:图G是k-边连通图当且仅当对E(G)的任 意一个子集E1,若|E1|≤k-1,则G\E1仍是连通 图。
连通度
定理:对p 简单图G,有
(1) (G) (G),(G) (G); (2) (G) p 1,等号成立当且仅当G Kp; (3)(G) p 1,等号成立当且仅当G Kp; (4)对G的任意一个顶点u, (G) 1 (G u); (5)对G的任意一条边e,(G) 1 (G e) (G).
(v0-vk)路P,且E(P) E(W ) 。
若P是一条路,x与y为顶点,用
表示这条路。
当G为简单图时,W=v0e1v1e2v2···vk-1ekvk,可简写为 W=v0v1v2···vk-1vk。
路和圈
对于图G中两个给定的顶点u和v,若存在(u-v)路,则 必存在长度最短的(u-v)路P0,称P0的长度为u,v的 距离,记为dG(u,v)或d(u,v)。
Байду номын сангаас
连通图
定理:设D是连通的有向图,则D是强连通的当 且仅当D的每一条弧都含在某一有向圈中。
连通度
定义:设连通图G=(V,E)不是完全图,V1是V(G)的一个
非空真子集,若G\V1非连通,则称V1是G的点割集。若点 割集V1含有k个顶点,也称V1是G的k-点割集。
定义:图G是p 阶连通图,令
(G)
表示n个点的回路。
有向图D的有向途径是指交替地出现点和弧的一个有限非空序列
W=v0a1v1a2v2···akvk ,对于i=1,2,···,k,弧ai的起点是vi1,终点是vi,简称W是一条(v0-vk)有向途径。在严格有向图中, 可用v0v1···vk表示有向途径。
第七章 图论
![第七章 图论](https://img.taocdn.com/s3/m/a667fd37dd36a32d737581eb.png)
• 对于有向图 G中的任意结点 u,v 和w,结点间的距离有以下 的性质: ① du,v≥0 ② du,u=0 ③ du,v+dv,w≥du,w • 注:一般来说, du,v不一定等于dv,u • 定义D=max du,v为图的直径 • 关于有向图两个结点间的距离可以很容易的推广到无向图 中
【例】如右图所示是一个图,其中 v1e1v2e3v3e4v2e3v3e7v5是一条从v1到v5的路 v1e1v2e3v3e4v2e5v4e8v5是一条从v1到v5的迹 v1e1v2e3v3e7v5是一条从v1到v5的通路 v3e3v2e5v4e8v5e6v2e4v3是一个回路 v3e3v2e5v4e8v5e7v3是一个圈
• 定义 7-1.9 设图 G=V,E 与图 G′=V′,E′ ,如果存 在一一对应的映射g: vi→vi′且e=(vi,vj)是G的一条 边当且仅当e′=(vi′,vj′)是G′的一条边,则称G与G′同 构,记为G≌G′.
• 通俗的讲两个图同构当且仅当两个图的结点和边存在着一 一对应,且保持关联关系
• 如果一对结点间的边多于一条,则称这些边为平行边
• 定义 7-1.4 含有平行边的任何一个图称为多重图
• 不含平行边和环的图称为简单图
• 定义 7-1.5 简单图G=<V,E>中, 若每一对结点都有 边相连,则称该图为完全图。
• n个结点的无向完全图记为Kn
• 定理7-1.4 • 定义7-1.6 给定一个图G,由G中所有结点和所有 能使G成为完全图的添加边组成的图,称为图G的 相对于完全图的补图,简称为G的补图,记为 G 。
1 n个结点的无向完全图Kn的边数为2 n(n 1)
• 定义7-1.7 设图G=<V,E>, 如果有图G′=<V′,E′>, 且 E′ E, V′ V, 则称G′为G的子图
《离散数学》第七章_图论-第2节-预习
![《离散数学》第七章_图论-第2节-预习](https://img.taocdn.com/s3/m/641e9a43cf84b9d528ea7a0b.png)
定理7-2.1推论
推论1: 在n阶图G中,若从不同结点vj到vk有 路,则从vj到vk有长度小于等于n-1的通路。 证明: 若路不是通路, 则路上有重复结点, 删除所有重复结点之间的回路, 得到的是通 路, 其长度小于等于n-1。 推论2:在一个具有n个结点的图中,如果存在 经过结点vi回路(圈),则存在一条经过vi 的长度不大于n的回路(圈)。
Whitney定理
(最小点割集<=最小边割集<=最小点度数)
Whitney定理的证明
证明:设G中有n个结点m条边。 (2)若G连通 1)证明λ(G)≤δ(G)
若G是平凡图,则λ(G)=0≤δ(G); 若G是非平凡图,由于每一结点上关联的所有 边显然包含一个边割集,因而删除最小度数 δ(G)对应结点所关联的边,则使G不连通,即 存在一个边割集的元素个数小于等于δ(G) , 即λ(G)≤δ(G)。
e6,e5都是割边
边连通度(edgeconnectivity)
为了破坏连通性,至少需要删除多少条边? 边连通度: G是无向连通图, (G) = min{ |E’| | E’是G的边割集 } 即产生一个不连通图需删去的边的最小数 目。 规定: G非连通: (G)=0 (Kn) = n-1
0
ei (vi 1 , vi ), (ei v i 1 , v i )
v
v1 v 2 0 e e 1 2
v i 1 v i ei
vn en
结点数=边数+1
路长度 :边的数目。
回路(closed walk)
回路: … v e v e v
0 1 1 2
当v 0 v n时
i 1
圈(cycles)
C1 C2 C3 C4 C5
图论 图的基本概念
![图论 图的基本概念](https://img.taocdn.com/s3/m/6de48c9076eeaeaad1f33059.png)
(3)H中至少有一条边的重数小于G中对应边重数
子图
生成子图(Spanning graph),又称支撑子图。
满足 V (H ) = V (G), E(H ) ⊂ E(G) 的真子图
奇圈与偶圈
n个顶点构成的道路记作 Pn 。 n个顶点构成的圈记作Cn 。
n为奇数的圈称为奇圈。 n为偶数的圈称为偶圈。
差运算
由G1中去掉G2中的边组成的图称为G1和G2 的差(difference),记作 G1 − G2
G1
G2
G1 − G2
例题 1.3.2
设G是简单无向图且 G ≅ Gc , n ≡ 1(mod 4) 。 证明:G中含奇数个 1 (n −1) 度点。
证明 V (G) = Vo Ve 2由推论1.3.2知,|Vo | 为
G
G[{e1, e4 , e5, e6}] G −{e5, e7}
G +{e8}
图G1,G2的关系
设 G1 ⊆ G,G2 ⊆ G. 若V (G1) V (G2 ) = φ ,则称G1和G2是点不交
(vertex-disjoint) 若 E(G1) E(G2 ) = φ ,则称G1和G2是边不交的
偶数。因为 n ≡ 1(mod 4) ,所以n为奇数个。
因此,|Ve | 为奇数个。
n ≡ 1(mod 4)
,
1 2
(n
−
1)
为偶数。
设为偶数。。若由 ,,存则在y,使得 且 x ∈Ve
d
G(x)G≠ 1 (n −2≅G
c
1)
dGc
图论 第1章 图的基本概念
![图论 第1章 图的基本概念](https://img.taocdn.com/s3/m/c870ff89b9d528ea81c7794d.png)
G
G[{e1 , e4 , e5 , e6 }]
G − {e5 , e7 }
G + {e8 }
图G1,G2的关系
设 G1 ⊆ G, G2 ⊆ G. 若 V (G1 ) V (G2 ) = φ x-disjoint) 若 E (G1 ) E (G2 ) = φ ,则称G1和G2是边不交的 (edge-disjoint) G1和G2的并, G1 G2 其中 V (G1 G2 ) = V (G1 ) V (G2 )
连通性
设 u, v 是图G的两个顶点,若G中存在一条 (u, v)
≡ v表示顶点 u 和v是连通的。 如果图G中每对不同的顶点 u , v都有一条 (u , v)
以 u
道路,则称顶点 u和 v是连通的(connected)。
道路,则称图G是连通的。
连通图
连通图
图G的每个连通子图称为G的连通分支,简
证明:G中含奇数个 1 (n − 1) 度点。 2 | Vo | 为 证明 V (G ) = Vo Ve 由推论1.3.2知, 偶数。因为 n ≡ 1(mod 4) ,所以n为奇数个。 因此,| Ve | 为奇数个。 n ≡ 1(mod 4) , 1 2 ( n − 1) 为偶数。 1 1 d ( x ) = n − 1 − d ( x ) ≠ (n − 1) 设 x ∈Ve。若 d ( x) ≠ 2 (n − 1),则 且 2 为偶数。由 G ≅ G c ,存在y,使得 d ( y) = d ( x) 为偶数。即 y ∈Ve 且 d ( y) ≠ 1 (n − 1) 。Ve 中度不为 2 1 (n − 1) 的点是成对的出现的。 2
G
G[{v1 , v2 , v3 }]
离散数学图论公开课一等奖优质课大赛微课获奖课件
![离散数学图论公开课一等奖优质课大赛微课获奖课件](https://img.taocdn.com/s3/m/9aa28739793e0912a21614791711cc7931b778b9.png)
b
c
g
d
a
h
b
c
g
d h
b
c
g
d
a
h
f (a)
f e
e
(b)
f
(c) 19
第19页
7.1 图基本概念
• (13)生成子图: 假如G子图包含G全部结点,则称 该子图为G生成子图。
• 以下图,(b)、(c)都是(a)生成子图。
(a)
(c)
20
第20页
7.1 图基本概念
(14).定义: 设图G =<V,E>及图G =<V ,E >, 假如存在一一相应映射g: vi→v i且e=(vi,vj)是G 一条边,当且仅当e =(g(vi ),g(vj))是 G 一条边,则称G与G 同构,记作G≌G 。 两个图同构充要条件是: 两个图结点和边分别存在着 一一相应关系,且保持关联关系。
7.1 图基本概念
(1)定义: 一个图G是一个三元组<V(G),E(G), ΦG>, 其 中V(G)为顶点集合, E(G)是边集合,ΦG是从边集E到 结点偶对集合上函数。
讨论定义:
(a) V(G) ={V1,V2,…,Vn}为有限非空集合,
Vi称为结点,简称V是点集。
(b) E(G)={e1,…,em}为有限边集合,ei称为边,每 个ei是连结V中某两个顶点,称E为边集。
(8)入度,出度: 在有向图中,射入一个结点边数称 为该结点入度。由一个结点射出边数称为该结点出 度。 结点出度与入度和是该结点度数。
定理: 在任何有向图中,所有结点入度和等于所有结 点出度之和。
14
第14页
7.1 图基本概念
证: ∵每一条有向边必相应一个入度和出度,若一个结点含 有一个入度或出度,则必关联一条有向边,因此,有向图 中各结点入度和等于边数,各结点出度和也是等于边数, 因此,任何有向图中,入度之和等于出度和。
哈密顿图.doc
![哈密顿图.doc](https://img.taocdn.com/s3/m/0fea6146a21614791611282d.png)
定义4.3.1 经过图G 的每个顶点恰一次的路称为G 的Hamilton 路,简称为H 路。
经过图G 的每个顶点恰一次的圈称为G 的Hamilton 圈,简称为H 圈。
具有Hamilton 圈的图称为Hamilton 图,简称为H 图。
Hamilton 图的研究起源于一种十二面体上的游戏。
1857 年,爱尔兰著名数学家William Rowan Hamilton 爵士(他也是第一个给出复数的代数描述的人)制作了一种玩具,它是一个木制的正十二面体,在正十二面体的每个顶点上有一个木栓,并标有世界著名城市的名字。
游戏者用一条细线从一个顶点出发,设法沿着十二面体的棱找出一条路,通过每个城市恰好一次,最后回到出发点。
这个游戏当时称为Icosian 游戏,也称为周游世界游戏。
将正十二面体从一个面剖开并铺展到平面上得到的图形如下图所示,称为十二面体图。
周游世界游戏用图论术语来说就是判断十二面体图是否Hamilton 图,并设法找出其Hamilton 圈。
其中一条Hamilton 圈如图中粗边所示。
十二面体图是H 图判断一个图是否Hamilton 图与判断一个图是否Euler 图似乎很相似,然而二者却有本质的不同。
目前为止尚没有找到判别一个图是否是Hamilton 图的有效充要条件。
这是图论和计算机科学中未解决的重要难题之一。
本节给出一些经典的充分条件和必要条件。
一、必要条件定理 4.3.1 设G 是二部图,若G 是H 图,则G 必有偶数个顶点。
证明:设G = (X, Y ) ,由于G 的边全在X 和Y 之间,因此如果G 有Hamilton 圈C,则G的所有顶点全在C 上,且必定是X 的点和Y 的点交替在C 上出现,因此G 必有偶数个顶点。
证毕。
这个定理给出了一个二部图不是Hamilton 图的简单判断条件:如果一个二部图有奇数个顶点,则它必定不是Hamilton 图。
例如,下列Herschel 图是二部图,但有奇数个顶点,故不是H 图。
二部图2-等周边连通度最优的充分条件
![二部图2-等周边连通度最优的充分条件](https://img.taocdn.com/s3/m/e8f5d9e0e009581b6bd9ebb8.png)
2 主 要 结 论
定理 1 设 G x u Y E)是一 个顶 点数 , ≥ 4 ( , l
子图, 称为 G的由 u导出的子 图, 记为 G ] [ .
定 义 2 二部 图 G是指一个 图 , 的顶点 集可 以 它
语 和记号 , 定 义 的术 语 和 记 号 参 见 文 献 [ ] 未 1 。任
意给定 的 图 G =C V E) 其 中 和 分 别 为 G的顶 (, ,
2. 令 ( G)=ri{ [ ] :Uc V l =k , a n l U, f , UI }
若 G的顶点集 n≥ 2 , 由 y ( )和 ( )的定 义 k则 ^G G 知 ( )≤ ( ) G G. 定义 5 如果 一个 图 G满 足 ( )= ( ) 那 G G , 么称 G是 一 优 的。 最
J ( ) 只需证 明 ( )≥ ( . B G. G :G)假设 S =[ , ]
是 G的一个 2 等周边割且 I = ( ) 令 一 l G. s
一 等
本 文研究 了一 类 推 广 的边 连 通度 [ 2 。
周边 连通 度 , 义如 下 : 4 定 剖
u o= { : u∈ U 与 s中任一边均不关联 } , ,
第3卷 l
第 4期
太
原
科
技
大
学
学
报
V 13 N . o. 1 o4
A g 2 1 u .0 0
21 0 0年 8月
J U N LO A Y A N V R IY O CE C N E H O O Y O R A FT I U N U I E ST F S I N E A D T C N L G
库斯顿定理的证明
![库斯顿定理的证明](https://img.taocdn.com/s3/m/6078fdd9846a561252d380eb6294dd88d0d23dde.png)
库斯顿定理的证明库斯顿定理是一个在图论中非常重要的定理,它表明一个简单图是哈密顿图的充分必要条件是图中每个非空的真子集所对应的子图的最大度数都大于等于该子图的顶点数。
下面,我们将详细介绍如何证明这个定理。
首先,我们需要证明库斯顿定理的充分性,即如果一个简单图的每个非空子集所对应的子图的最大度数都大于等于该子图的顶点数,那么该图是哈密顿图。
为了证明这一点,我们可以使用归纳法。
假设我们已经证明对于任意 $k$ 个或者更少的顶点的简单图,若每个非空子集所对应的子图的最大度数都大于等于该子图的顶点数,则该图是哈密顿图。
现在我们来考虑一个$n$ 个顶点的简单图$G=(V,E)$,我们需要证明如果该图每个非空子集所对应的子图的最大度数都大于等于该子图的顶点数,则该图是哈密顿图。
首先,我们可以选择一个顶点 $v \in V$,我们需要证明如果我们从$v$ 出发,依次经过 $n$ 个顶点就能构成一条哈密顿回路。
为了证明这一点,我们可以设计以下的算法:从 $v$ 开始,选择与 $v$ 相邻的一个顶点 $w_1$,然后顺次选择与$w_1$ 相邻的顶点 $w_2, w_3, \cdots, w_{n-1}$,最后回到 $v$。
如果存在某个 $w_i$ 与 $v$ 相邻,则该算法成功构造了一条哈密顿回路。
否则,我们将 $w_1$ 的邻居集合表示为 $N(w_1) =\{v,u_1,u_2,\cdots,u_k\}$,则由于每个非空子集所对应的子图的最大度数都大于等于该子图的顶点数,我们可以知道 $k \geq n-2$。
因此,我们一定可以从 $w_1$ 的邻居中选择一个顶点 $u_i$,使得与 $v$。
$w_1$,$u_i$ 和 $w_2$ 形成一条哈密顿路。
然后我们接着选择与$w_2$ 相邻的顶点 $w_3$,并重复这个过程,直到找到与 $v$ 相邻的顶点。
为了证明库斯顿定理的必要性,即如果一个简单图是哈密顿图,则每个非空子集所对应的子图的最大度数都大于等于该子图的顶点数,我们可以使用反证法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
定理7.6:任何一个回路和任何一个割集有 偶数条公共边。
证明:从连通图G中删去一个割集D后, 得 到两个顶点子集V1和V2,
考察G中任一条回路C :
(1) 如果C中所有顶点在V1(或V2)中, 则C与D 没有公共边。
在有根树中,从根v到其余每个顶点有唯一的 一条有向路。这一性质由定义 7.12 即可得 出。有根树中还有一些专门术语, 现在介绍 如下:
定义7.13:设u是有根树的分枝点, 若从u到 w有一条弧 (u,w),则称w为u的儿子,或u为w 的父亲。若一个顶点有两个儿子, 则称它们 为兄弟。若从u到z有一条有向路, 则称z是u 的子孙,或称u是z的祖辈。从根到某一顶点v 的路长度称为顶点v的层数。从根到树叶的 最大层数, 称为有根树的高。
的最小生成树,记为T。
定理7.8:克鲁斯科尔算法所得到的图T是 最小生成树。
证明:首先由定理7.1等价定义(4)(T是无回 路图,且在T的任两个不相邻的顶点之间 添加一边,恰得到一条回路)知T是G的一 棵子树。
并由等价定义(2)可知边数为n-1(T是无回 路图,且e=n-1),所以为G的生成树。
图 7.2(b) 中边集
{e1,e2}
和
{e1断集, 反
之不一定。
对于连通图G(V,E), 删去一个割集D, 得 到两个分支,
顶点集分别为V1和V(G)-V1, 割集D是G中一个端点在V1中, 另一端点
在V(G)-V1中的边的全体。 如果在连通图G中, 删去一个断集而不是
7.3最小生成树
定义7.10:设G(V,E,w)是带权连通简单图, w是 从E到实数集的函数。又设T是G的一棵生成 树,T中所有枝的权之和称为T的权,记为W(T)。 具有权 minTW(T)的生成树称为最小生成树。
这个问题是具有实际意义的。例如G的顶点 表示城市, G的边表示城市间的道路,边的权 表示对应道路的长度, 现在沿着道路架设通讯 线路, 将这些城市联系起来, 要求架设的线路 最短, 这个问题就是求一棵最小生成树的问题
前面讨论有根树时, 没有考虑同一分枝点连出 的弧的次序, 例如图 所示的有根树就是这样, 它
们是相同的有根树。但是在计算机科学中的许 多具体问题(如编码理论和程序语言等)一定要 考虑这种弧的次序。为此,现在引进有序树的概 念。
定义7.15:有根树的每个分枝点连出的弧(或者 有根树的每一个顶点)从左到右用正整数 1,2,,i,标上标号,称该有根树为有序树。
通常的电报是用长度为5的0和1序列来表示英 文字母和标点符号的, 这种长度为5的0和1序列 组成的集合称为5单位编码。
为了传输一篇短文,将对应的0和1序列组成的信 息串发送出去以后, 在接收端就将此信息串划 分成长度为 5 的序列, 这样就得到对应的短文。
但在一篇短文中每个字母出现的频率是 不同的, 如表所示。
所有运算符处于分枝点的位置。如果将分枝点 连出的弧的次序改变一下, 那么所得到的二分 树对应的算术表达式也就改变了。
定理7.10:在正则二分树中,它的分枝点数i和树 叶数t满足:i=t-1。
证明:因为分枝点儿子的总数为2i等于树的顶点 数减1(这是因为除了根外每个点都是儿子),
而树的顶点可分成两类:分枝点和树叶:即顶 点数=i+t,
7.5有根树与二分树
定义7.11:有向图在不考虑弧的方向时是一棵 树, 称该有向图为有向树。
显然有向树是弱连通的。现在将讨论一类重要 的有向树, 即有根树, 定义如下:
定义7.12:若一棵有向树恰有一个顶点的入度 为 0 ,其余所有顶点的入度均为1,则称该有向树 为有根树。入度为 0 的顶点称为有根树的根。 出度为0的顶点称为有根树的树叶。出度非零 的顶点称为分枝点或内点。
一类重要的m分树是二分树和正则二分 树。对于二分树, 一个分枝点的左右两个 儿子为根的子树分别称左子树和右子树
在画有序树时,如果规定将一个分枝点的 儿子放在它下面, 那么弧的箭头就可以省 略, 因为箭头总是朝下的。如前面例子中 的图。
例:算术表达式a-(b+(c/d)+(e/f))可以用图中的二 分树来表示。所有运算对象都处于树叶的位置,
字母 频率 字母 频率
a
0.0356
n
0.0707
B
0.0139
o
0.0797
c
0.0279
p
0.0199
d
0.0378
q
0.0012
e
0.1304
r
0.0677
f
0.0289
s
0.0607
g
0.0199
t
0.1045
h
0.0528
u
0.0249
i
0.0627
V
0.0092
j
0.0013
w
0.0149
有根树的概念非常重要, 原因在于它描述 了一个离散结构的层次关系, 而层次结构 是一种重要的数据结构, 所以有根树结构 在相当广泛的领域中有它的应用。有时 只要考虑某一层次上某分枝点为根的局 部层次关系, 因此引入下面的概念:
定义7.14:设u是有根树T的任一顶点,以 u为根,u及其所有子孙所组成的顶点集记 为 V',u 到 这 些 子 孙 的 有 向 路 上 所 有 弧 组 成的弧集记为E',称T的子图T'(V',E')为以 u为根的子树。
因此有2i=i+t-1,
所以i=t-1。
类似可证在正则m分树中有(m-1)i=t-1。
定理7.11:设T是正则二分树,I表示所有分枝点 的路长度之总和,E表示所有树叶的路长度之总 和, 则E=I+2i,其中i是分枝点数。
证 明 : 对 分 枝 点 数 i 进 行 归 纳 证 明 , 当 i=1 时 E=2,I=0,所以E=I+2i。
因为从生成树T中删去一条枝, 将T分为 两棵树, 它将G的顶点集V划分为V1和VV1, 在G中这两个顶点集之间的连边, 便 对应这一枝的唯一的基本割集。
设连通图G有e条边, n个顶点, 给定的生成树T 应有n-1条枝, 所以恰有n-1个基本割集, 这些 基本割集的全体称为生成树T基本割集组。
k
0.042
x
0.0017
l
0.0339
y
0.0199
m
0.0249
z
0.0008
(1)选取G的一边e1,使w(e1)最小,令E1={e1},1i。 (2)若已选Ei={e1,e2,,ei},那么从E-Ei中选取一
边ei+1,满足: 1)Ei∪{ei+1}的导出子图中不含有回路; 同时 2)w(ei+1)为满足1)E-Ei中的最小; 3)若ei+1存在,则令Ei+1=Ei∪{ei+1},i+1i,转(2); 若ei+1不存在,则停,此时Ei导出的子图就是所求
如图是有根树, 顶点标号写在圆圈中。顶点 1 是根, 顶点 6, 8, 9, 10, 11, 12 都是树叶, 顶点 1, 2, 3, 4, 5, 7 都是分枝点, 顶点 1 的层数为 0 , 顶点 2, 3的层数为 1 , 顶点 4, 5, 6, 7, 8 的层数为 2 , 顶点 9, 10, 11, 12 的层数为 3 。
现在对S进行变换,在S上加边ek得到一条回路, 记 为C ,在C中必有一边e‘S, 但e’T,否则T中有回 路,导致矛盾。
但因为e1,e2,,ek-1是S和T的公共边, e‘S,所以 e1,e2,,ek-1和e’不构成回路,
根据克鲁斯科尔算法知w(ek)≤w(e')(否则T应选e')。
在确定树或画树的方式中,这些标号如果清楚的话, 那么 标号可以省略。
如下面2个图中的有序树是不同构的, 对应的有根树却相 同, 即如上图(a)、(b)所示。
(c)可表示一个人的长子有三个孩子, 次子没有孩子;
(d)可表示一个人的长子没有孩子,而次子有三个孩子 。
定义7.16:在有序树中,每个分枝点v至多 有m个儿子,称该有序树为m分树。如果 每个分枝点恰有m个儿子,称该有序树为 正则m分树。
假设i=k-1时结论成立。
现考察分枝点数i=k的情况,设分枝点v的两 个儿子是树叶,删去v连出的边及其儿子,v的 路长度为l,
由归纳假设知, 在T'中,E'=I'+2(k-1)。
类似 可 证 在 正 则 m分 树 中 有 E=(m-1)I+mi, 具体证明作为习题。
7.6最优树
考虑远距离通讯中的一个问题,一篇英文字母组 成的短文如何从发送端发出信息, 通过远距离 传输送到接收端。
上述过程继续进行, 直到所有边均检查完, 得到 的部分子图就是所求的一棵最小生成树,
如图(b)所示, 这里e1={v1,v6}和e2={v7,v2}取出后, 取e3为{v2,v3},;
若改取e3为{v3,v7},可得到另一棵最小生成树 求最小生成树的克鲁斯科尔(Kruskal)算法
克鲁斯科尔算法:设G(V,E,w)是有n个顶点的带 权连通简单图。
定义7.5:设图G的顶点非空真子集为V1V, 在G 中一个端点在V1中, 另一端点在V(G)-V1中的所 有边组成的集合称为G的一个断集或称边割,记 为 E(V1(V(G)-V1)), 简记为(V1, V(G)-V1)。
当|(V1, V(G)-V1)|=1时, (V1, V(G)-V1)中的那条 边称为割边或 桥。
克鲁斯科尔算法的步骤, 通俗地说, 就是先将G 中的边按权从小到大顺序排列, 再从小到大依 次取出每一边作检查。