图论 第3章 连通度、匹配
- 格式:doc
- 大小:158.50 KB
- 文档页数:8
第三章连通度、匹配⎧⎪⎨⎪⎩顶点连通度和边连通度门格尔定理匹配、霍尔定理本章的特点:(1)理论深;(2)本科基本用不上(计算机体系结构上用到一点),只有研究生才能用上;(3)只介绍这个领域最基本的概念和一些有用的结果。
一个图是否是连通的,这是图的一个重要性质。
内容:本章首先引入图的顶点连通度和边连通度,由此可以比较两个图中哪个“更加连通”;接着讨论了它们的一些简单性质;然后讨论偶图的匹配问题。
第一节顶点连通度和边连通度χγχλδ⎧⎪⎪⎨⎪⎪⎩动机和目的顶点连通度(G)、边连通度(G)(G)、(G)、(G)关系n-顶点连通、n-边连通1.1 动机和目的一个图是否是连通的,是图的一个重要性质。
于是,我们就想来刻画两个图“连通程度”的大小,但是刻画两个图“连通程度”的大小方法很多,我们只介绍两个常用的方法:顶点连通度和边连通度例:树的每个度大于1的顶点都是割点。
一个具有割点的连通图,当去掉这个割点时,就产生了一个不连通图。
对于一个没有割点的连通图,必须去掉多于一个顶点才有可能得到一个不连通图。
于是,具有割点的连通图较之没有割点的连通图的“连通程度”要低。
类似地,树的每条边的都是桥。
有桥的连通图,当去掉桥时,就产生了一个不连通图。
对于无桥的连通图,要想去掉一些边得到不连通图,至少要去掉两条才有可能得到不连通图。
从去掉边来获得不连通图的角度看,有桥的连通图较之无桥的连通图的“连通程度”要低。
特别是,一个非平凡树是一个有最少边连通图。
图的顶点和边,在不同应用中有不同意义。
在通讯网络中,通讯站是顶点,通讯线路是边。
它们的失灵势必危机系统的通讯。
所以,网络图的“连通程度”越高,通讯网络越可靠。
这种直观的想法,启发我们建立以下的严格概念:1.2 顶点连通度(连通度)定义1 设G=(V,E)是一个无向图,要想从G中得到一个不连通图或平凡图所需要从G中去掉的最少顶点数称为G 的顶点连通度,简称连通度。
记为)(G χχ=。
图论算法三、图的连通性算法求图的连通性之零:遍历欧拉路求图的连通性之一:判断两点是否连通1.Floyed算法时间复杂度:O(N3 )算法实现:不再赘述。
2.遍历算法时间复杂度:O(N2 )算法实现:从任意一个顶点出发,进行一次遍历,就可以求出此顶点和其它各个顶点的连通状况。
所以只要把每个顶点作为出发点都进行一次遍历,就能知道任意两个顶点之间是否有路存在。
可以使用DFS实现。
3.并查集算法时间复杂度:O(N*小常数)算法实现:只适用于无向图,即判断两点是否有相同的父亲。
例题:寻找满足条件的连通分支。
求图的连通性之二:求无向图的连通分量个数。
只要使用并查集即可,如果两个点的祖先相同,显然属于同一连通分量。
一遍循环,统计一共有多少个祖先即可。
求图的连通性之三:求有向图的强连通分量个数与收缩强连通分量。
主要采用Kosaraju算法,复杂度O(N)。
一个有向图的强连通分量,能够收缩为一个点,统计最后点的个数,即是强连通分量的个数。
(a)(b)Kosaraju 算法的思想讲解:1) 对原图进行深搜(DFS ),得到一个深搜出栈的顺序。
假设出栈顺序 3→5→2→4→1 2)将原图每条边进行反向。
3) 逆序,对反图进行搜索。
出栈顺序 3→5→2→4→1 逆序 1→4→2→5→3并且在每轮搜索中对搜到的点进行染色。
color:=0;for i:= p downto 1 do {得到的出栈顺序的逆序就是拓扑顺序}if col [a [i ]]=0 then {没染色过的点,就是没被搜索到的点} begin inc (color );DFS2(a [i ]); {按照1中生成顺序再进行DFS 染色染成同色的是一个强连通块} end ;显然,每条边都进行反向后,在反图中按出栈的逆序也能搜到的连通块一定是强连通块。
因为如果是强连通子图,那么反向没有任何影响,依然是强连通子图。
但如果是单向的边连通,反向后再按原序就无法访问了(因此反向处理是对非强连通块的过滤)。
第三章 匹配理论§3.1 匹配与最大匹配定义3.1.1 设G 是一个图, )(G E M ⊆,满足:对i e ∀,M e j ∈,i e 与j e 在G 中不相邻,则称M 是G 的一个匹配。
对匹配M 中每条边uv e =,其两端点 u 和 v 称为被匹配M 所匹配,而 u 和 v 都称为是M 饱和的(saturated vertex )。
注:每个顶点要么未被M 饱和, 要么仅被M 中一条边饱和。
定义3.1.2 设M 是G 的一个匹配, 若G 中无匹配M ′, 使得||||M M >′, 则称M 是G 的一个最大匹配;如果G 中每个点都是M 饱和的, 则称M 是G 的完美匹配(Perfect matching ).显然, 完美匹配必是最大匹配。
例如,在下图G 1中,边集{e 1}、{e 1,e 2}、{e 1,e 2,e 3}都构成匹配,{e 1,e 2,e 3}是G 1的一个最大匹配。
在 G 2中,边集{e 1,e 2,e 3,e 4}是一个完美匹配,也是一个最大匹配。
定义3.1.3 设M 是G 的一个匹配, G 的M 交错路是指其边M 和M G E \)(中交替出现的路。
如果G 的一条M 交错路(alternating path)的起点和终点都是M 非饱和的,则称其为一条M 可扩展路或M 增广路(augmenting path)。
定理 3.1.1(Berge,1957) 图G 的匹配M 是最大匹配的充要条件是G 中不存在M 可扩展路。
证明:必要性:设M 是G 的一个最大匹配。
如果G 中存在一个M 可扩展路P ,则将P 上所有不属于M 的边构成集合M ′。
显然M ′也是G 的一个匹配且比M 多一条边。
这与M 是最大匹配相矛盾。
充分性:设G 中不存在M 可扩展路。
若匹配M 不是最大匹配,则存在另一匹配M ′,使||||M M >′. 令][M M G H ′⊕=,(M M M M M M ′−′=′⊕∩∪称为对称差)。
第三章连通度、匹配⎧⎪⎨⎪⎩顶点连通度和边连通度门格尔定理匹配、霍尔定理本章的特点:(1)理论深;(2)本科基本用不上(计算机体系结构上用到一点),只有研究生才能用上;(3)只介绍这个领域最基本的概念和一些有用的结果。
一个图是否是连通的,这是图的一个重要性质。
内容:本章首先引入图的顶点连通度和边连通度,由此可以比较两个图中哪个“更加连通”;接着讨论了它们的一些简单性质;然后讨论偶图的匹配问题。
第一节顶点连通度和边连通度χγχλδ⎧⎪⎪⎨⎪⎪⎩动机和目的顶点连通度(G)、边连通度(G)(G)、(G)、(G)关系n-顶点连通、n-边连通1.1 动机和目的一个图是否是连通的,是图的一个重要性质。
于是,我们就想来刻画两个图“连通程度”的大小,但是刻画两个图“连通程度”的大小方法很多,我们只介绍两个常用的方法:顶点连通度和边连通度例:树的每个度大于1的顶点都是割点。
一个具有割点的连通图,当去掉这个割点时,就产生了一个不连通图。
对于一个没有割点的连通图,必须去掉多于一个顶点才有可能得到一个不连通图。
于是,具有割点的连通图较之没有割点的连通图的“连通程度”要低。
类似地,树的每条边的都是桥。
有桥的连通图,当去掉桥时,就产生了一个不连通图。
对于无桥的连通图,要想去掉一些边得到不连通图,至少要去掉两条才有可能得到不连通图。
从去掉边来获得不连通图的角度看,有桥的连通图较之无桥的连通图的“连通程度”要低。
特别是,一个非平凡树是一个有最少边连通图。
图的顶点和边,在不同应用中有不同意义。
在通讯网络中,通讯站是顶点,通讯线路是边。
它们的失灵势必危机系统的通讯。
所以,网络图的“连通程度”越高,通讯网络越可靠。
这种直观的想法,启发我们建立以下的严格概念:1.2 顶点连通度(连通度)定义1 设G=(V,E)是一个无向图,要想从G中得到一个不连通图或平凡图所需要从G中去掉的最少顶点数称为G 的顶点连通度,简称连通度。
记为)(G χχ=。
离散数学是数学中的一个重要分支,它研究的是离散的、离散的、不连续的数学结构与问题。
而图论是离散数学的一个重要领域,它研究的是图的性质和关系。
在离散数学中,图是一个由节点(顶点)和边组成的网络结构。
节点表示实体,边表示节点之间的关系。
图的匹配是指一种边的选择方式,使得没有两个边具有相同的起点或终点。
图的匹配问题是图论中的一个经典问题,匹配理论则是研究匹配问题的理论基础。
图的匹配在实际中有广泛的应用,比如在交通规划、人员分配等领域中都涉及到匹配问题。
在图的匹配问题中,存在两种不同的匹配,分别是最大匹配和完美匹配。
最大匹配是指在所有可能的匹配中,边数最多的匹配,而完美匹配是指图中的每个节点都被匹配。
在图的匹配问题中,一个重要的概念是增广路径。
增广路径是指一个由未匹配的顶点和匹配点依次相连所构成的路径。
通过寻找增广路径,可以使得匹配数增加,从而逐步逼近最大匹配。
图的匹配理论主要围绕匹配数的计算和匹配的寻找展开。
最简单的匹配算法是贪心算法,即每次找到一个未匹配的节点,与之相连的边进行匹配,并不断更新匹配的边。
然而,贪心算法无法保证得到最优解,因此需要其他更加高效的算法来解决匹配问题。
其中一种经典的算法是匈牙利算法,它以增广路径为基础,通过不断寻找增广路径来找到最大匹配。
匈牙利算法的核心思想是通过不断寻找增广路径来增加匹配数。
具体步骤如下:1.初始化所有节点都未匹配2.对每个未匹配的节点,进行深度优先搜索,寻找增广路径3.如果找到增广路径,则将路径上的边匹配4.重复步骤2和步骤3,直到无法找到增广路径5.返回匹配结果匈牙利算法的时间复杂度为O(V * E),其中V为节点数,E为边数。
虽然匈牙利算法在时间复杂度上不是最优的,但它具有简单易懂、容易实现的优点。
在实际应用中,匹配问题往往需要考虑更多的因素,比如权重、容量等。
为了解决带权匹配问题,可以使用最小权重匹配算法,比如Dijkstra算法或Floyd-Warshall算法。
图论是离散数学中的一个重要分支,其中图的匹配问题被广泛研究和应用。
图的匹配是指在一个图中找到一组边,使得每个顶点都与其中的一条边相关联。
匹配问题在实际生活中有着广泛的应用,例如婚姻问题中的稳定婚姻匹配、求解工程布线问题、计算机网络中的路由问题等等。
在图的匹配问题中,一个匹配是指一个边集,其中任意两条边的两个顶点都不相同。
一个最大匹配是指具有最多边数的匹配,而完美匹配是指包含图中所有顶点的匹配。
为了求解图的最大匹配和完美匹配问题,研究者们提出了多种匹配算法。
下面介绍两种常见的匹配算法:增广路径算法和匈牙利算法。
增广路径算法是一种基于搜索的匹配算法。
该算法通过递归地搜索增广路径来不断扩展当前匹配的边集。
增广路径是指一条从未匹配的顶点开始,交替经过边集中的匹配边和未匹配边的路径。
当找到一个增广路径时,可以通过将路径上的未匹配边和已匹配边进行交换来增加匹配的边数。
该算法重复执行这一步骤,直到没有增广路径可以找到为止。
最终得到的边集就是一个最大匹配。
匈牙利算法是一种贪心算法。
该算法从一个未匹配的顶点开始,尝试将其与任意还未匹配的邻接顶点进行匹配,并递归地对邻接顶点进行匹配。
如果当前的匹配可以被改进,则进行匹配的调整。
当所有的顶点都被匹配上时,得到的边集就是一个完美匹配。
图的匹配问题具有多项式时间复杂度的解法,因此可以有效地求解大规模问题。
匹配算法在现实生活中的应用非常广泛,它们被广泛应用于计算机网络、人工智能、生物信息学等领域。
例如,在计算机网络中,匹配算法可以用于求解最优路由问题,以便在网络传输过程中选择最佳的路径。
在交通运输中,匹配算法可以用于最佳路径规划、货物调度等。
在社交媒体中,匹配算法可以用于推荐好友、推荐兴趣爱好等。
总结来说,离散数学中的图的匹配问题是一个重要而有趣的领域。
它的应用涉及广泛,算法也多样。
增广路径算法和匈牙利算法是两种常见的图匹配算法,它们在实际问题中具有重要的作用。
在未来的研究中,我们可以进一步研究图匹配问题的优化算法和高效实现方式,以满足不同实际问题的需求。
第三章连通度、匹配⎧⎪⎨⎪⎩顶点连通度和边连通度门格尔定理匹配、霍尔定理本章的特点:(1)理论深;(2)本科基本用不上(计算机体系结构上用到一点),只有研究生才能用上;(3)只介绍这个领域最基本的概念和一些有用的结果。
一个图是否是连通的,这是图的一个重要性质。
内容:本章首先引入图的顶点连通度和边连通度,由此可以比较两个图中哪个“更加连通”;接着讨论了它们的一些简单性质;然后讨论偶图的匹配问题。
第一节顶点连通度和边连通度χγχλδ⎧⎪⎪⎨⎪⎪⎩动机和目的顶点连通度(G)、边连通度(G)(G)、(G)、(G)关系n-顶点连通、n-边连通1.1 动机和目的一个图是否是连通的,是图的一个重要性质。
于是,我们就想来刻画两个图“连通程度”的大小,但是刻画两个图“连通程度”的大小方法很多,我们只介绍两个常用的方法:顶点连通度和边连通度例:树的每个度大于1的顶点都是割点。
一个具有割点的连通图,当去掉这个割点时,就产生了一个不连通图。
对于一个没有割点的连通图,必须去掉多于一个顶点才有可能得到一个不连通图。
于是,具有割点的连通图较之没有割点的连通图的“连通程度”要低。
类似地,树的每条边的都是桥。
有桥的连通图,当去掉桥时,就产生了一个不连通图。
对于无桥的连通图,要想去掉一些边得到不连通图,至少要去掉两条才有可能得到不连通图。
从去掉边来获得不连通图的角度看,有桥的连通图较之无桥的连通图的“连通程度”要低。
特别是,一个非平凡树是一个有最少边连通图。
图的顶点和边,在不同应用中有不同意义。
在通讯网络中,通讯站是顶点,通讯线路是边。
它们的失灵势必危机系统的通讯。
所以,网络图的“连通程度”越高,通讯网络越可靠。
这种直观的想法,启发我们建立以下的严格概念:1.2 顶点连通度(连通度)定义1 设G=(V,E)是一个无向图,要想从G中得到一个不连通图或平凡图所需要从G中去掉的最少顶点数称为G 的顶点连通度,简称连通度。
记为)(G χχ=。
说明:(1)对这个定义我们需要说明的是,希望每个图都有顶点连通度。
但对完全图Kp ,不论去掉哪些顶点,都不会得到不连通图,当去掉p-1个顶点时得到K 1-平凡图。
为了使这样的连通图也有顶点连通度,所以在定义中加入了“为得到平凡图所需要去掉的顶点的最少数”这一条件。
(2)对于特殊的图顶点连通度是知道的。
K1-平凡图0)(1=K χ; 有割点的图1)(=G χ;不连通的图0)(=G χ; 完全图K p )2(≥p 1)(-=p K p χ。
推论1:若G 连通,则1)(≥G χ;若1)(≥G χ,则G 连通或是非平凡图。
定义2设G=(V ,E)是一个无向图,要想从G 中得到一个不连通图或平凡图所需要从G 中去掉的最少边数称为G 的边连通度,简称连通度。
记为)(G λλ=。
对于特殊的图边连通度是知道的。
0)(1=K λ;当p ≥1时,1)(-=p K p λ;非平凡树T 1)(=T λ;有桥的图1)(=T λ。
说明:(1)对于连通图来说,边连通度就是割集中最小的那个。
(2)对于一个图来说,割集--可以有多个,但边连通度--却只有一个。
(3)对于非平凡图来说,割集--永远也不能为零(空集),但边连通度--在图不连通时却是零。
(4)连通度与割集的联系和区别?---自己综合。
1.3 顶点连通度)(G χ、边连通度)(G λ、最小度)(G δ之间有以下的关系:定理1 对任一图G ,有)()()(G G G δλχ≤≤证 先证λ(G)≤δ(G),若δ(G)=0,则G 不连通,从而λ(G)=0。
所以,这时λ(G)≤δ(G);若δ(G)>0,不妨设degu =δ(G),从G 中去掉与v 关联的δ(G)条边后,得到的图中v 是弧立顶点。
所以,这时λ(G)≤δ(G)。
因此,对任何图G 有λ(G)≤δ(G)。
其次,证明对任何图G 有χ(G)≤λ(G)。
若G 是不连通的或平凡图,则显然有χ(G)≤λ(G)=0;今设G是连通的且非平凡的。
若G有桥x,则去掉x的某个端点就得到一个不连通图或平凡图,从而χ(G)=1=λ(G)。
所以,这时有χ(G)≤λ(G);若G没有桥,则λ(G)≥2。
于是,从G中去掉某些λ(G)边得到一个不连通图。
这时从G中去掉这λ(G)条边的每一条的某个端点后,至少去掉了这λ(G)条边。
于是,产生了一个不连通图或平凡图,从而χ(G)≤λ(G)。
因此,对任何G,χ(G)≤λ(G)。
定理2 对任何整数a,b,c,0≤a≤b≤c,存在一个图G使得(λ,cG=))(δ。
G=G=a(χ,b)证若a=b=c,则图G=K a+1就是所要求的图。
若a=b<c,则所要求的图G的图解为图1(a)所示。
a条边K c+1 K c+1a-1条边(b)图1若a<b=c,则G=2K b-a+1+K a就是所要求的图。
其中G的图解是这样画出的:把完全图K b-a+1的图解在平面上画两次,再画出K a图解,然后在K a的每个顶点与K b-a+1的每个顶点间联一条边而得到的图。
若a<b<c,则所要的图G的图解见图1 (b)。
因为显然有:λ(G)=a,λ(G)=b,δ(G)=c。
说明:定理2的结果表明,不对图G加任何限制,定理1的结论不能再改进了。
但当对图G再加上某些限制,例如,当δ(G)充分大时,我们能证明λ(G)=δ(G)。
为此,先证明下面的引理:引理1 设G=(V ,E)是一个图且λ(G)>0,则存在V 的真子集A ,使得G 中联结A 中的一个顶点与V\A 中一个顶点的边的总数恰为λ(G).证 因为λ(G)>0,所以G 中有λ(G)条边,把它们去掉后得到一个恰有两个支的不连通图。
令其中一个支的顶点集为A ,则A 是V 的一个真子集。
由于λ(G)>0,那些被去掉的每一条边,其一个端点在A 中,另一个端点在V\A 。
这些边当然为λ(G)条。
定理3 设G=(V ,E)有p 个顶点且δ(G)≥[p/2],则λ(G)=δ(G)。
证 因为δ(G)≥[P/2],所以G 是连通的。
由定理3.1.1知,λ(G)≤δ(G)。
于是只要证明δ(G)≤λ(G)即可。
由于G 是连通的,所以λ(G)>0。
由引理3.1.1,存在V 的真子集A 使得G 中联结A 中的一个顶点与V\A 中的一个顶点的边恰有λ(G)条。
设|A|=m ,则G 中两个端点均属于A 的边的条数至少为(m δ(G)-λ(G))/2于是,假如λ(G)<δ(G),则(m δ(G)-λ(G))/2>(m δ(G)-δ(G))/2=δ(G)(m-1)/2若m ≤δ(G),则(m δ(G)-λ(G))/2>m(m-1)/2。
这是不可能的,所以δ(G)<m ,于是m≥δ(G)+1≥[p/2]+1≥(p+1)/2。
同理可证|V\A|=p-m≥(p+1)/2。
因此,|V |>p ,矛盾。
所以,λ(G)≥δ(G)。
于是,λ(G)=δ(G)。
定理4 设G 是一个(p ,q)图,则(1 )若q<p-1,则χ(G)=0;(2 )若q ≥p-1,则χ(G)≤[2q/p]证(1)若q<p-1,则G 不连通,故 χ(G)=0。
(1) 若q ≥p-1,则有握手定理可知:∑∈=Vv q v 2deg ,故q G p 2)(=δ,于是[]p q G /2)(≤δ。
由定理1便得到[]p q G G /2)()(≤≤δχ。
1.4 n-顶点连通、n-边连通定义3 设G 是一个图,则若)(G χ≥n ,则称G 是n-顶点连通的,简称n-连通;若)(G ≥n ,则称G 是n-边连通的。
显然,图G 是1-连通的,当且仅当是连通的。
定理5 设G =(V ,E)是p 个顶点的图,p ≥3,则G 是2-连通图,当且仅当G 的任两个不同顶点在G 的同一个回路上。
证 <=设G 的任意两个顶点在G 的同一个回路上,则G 是一个没有割点的连通图,所以G 是2-连通的。
=>设G 是2-连通的,u 和v 是G 的两个不同顶点。
施归纳于u 与v 的距离d(u ,v)来证明u 与v 在一个回路上。
当d(u ,v)=1,由于χ(G)≥2,所以uv 不是桥。
由定理2.3.3,边uv 必在G 的某个回路上,所以u 与v 在G 的某个回路上。
假设对d(u ,v)〈k 的任意两个不同顶点u 和v ,u 与v 必在G 的某个回路上。
今设 d(u ,v)=k ,往证u 和v 在G 的某个回路上。
考虑G 中u 与v 间的一条长为k 的路P :uv 1v 2 …v k-1v 。
显然d(u ,v k-1)=k-1。
由归纳假设u 与v k-1在G 的某个回路上。
于是,u 与v k-1间有两条没有内部公共顶点(即除u 与v k-1外)的两条路W ,Q 。
由于χ(G)≥ 2,所以G 无割点,从而G-v k-1是连通图。
于是,G-v k-1中有u 到v 的路S 。
u 是W ,Q ,S 的公共顶点。
设w 是S 上从u 到v 且在Q 或W 上的最后一个顶点(见图3.1.2)。
不妨设w 在Q 上,则在G 中就有含u 与v 的回路:Q 上的u 与w 间一段后接S 上w 与v 间的那段,然后是边v k-1v ,最后是W 。
定理6 图G =(V ,E)是n-边连通的充分必要条件是不存在V 的真子集A ,使得G 的联结A 的一个顶点与V\A 的一个顶点的边的总数小于n 。
证 =>设G 是n-边连通的,则χ(G)≥n 。
若存在V 的真子集A ,使得G 的联结A 的一个顶点与V\A 的一个顶点的边的总数j<n ,则去掉这j 条边便得到一个不连通图,所以,λ(G)≤j 。
这与 χ(G)≥n 相矛盾。
因此,V 的这样的真子集A 是不存在的。
<=若λ(G)<n ,则由引理3.1.1,存在V 的真子集A ,使得G 的联结A 的一个顶点与V\A的一个顶点的总数为λ(G)<n ,这与假设不存在V 的这样真子集A 相矛盾。
所以, λ(G)≥n 。
第二节门格尔定理⎧⎨⎩顶点、边不相交路门格尔定理凭直观觉得,刻画连通图的“连通程度”,应该与图中任两个不同顶点的路的条数有关。
1927年,门格尔证明了一个图的连通度与联结图中两个不同顶点不相交路的条数有关。
2.1 顶点、边不相交路定义1设u与v是图G的两个不同顶点,则(1)若两条联结u和v的路,除了u与v外没有公共顶点,则称此两条路是联结u和v的不相交路。
(2)若联结u和v的两条路上没有公共边,则称这两条路是联结u和v的边不相交路。
定义2 设G=(V,E)是一个图,S⊆V,F⊆E,则(1)若u和v分别在G-S的两个不同支中,则称图G的顶点集S分离G的两个不邻接的顶点u和v。
(2)若u和v分在G-F的两个不同支中,则称图G的边集F分离G的两个不同顶点u 和v。