离散数学电子教材精品文档_002Word格式.doc
《离散数学电子教材精品文档_002Word格式.doc》由会员分享,可在线阅读,更多相关《离散数学电子教材精品文档_002Word格式.doc(35页珍藏版)》请在冰豆网上搜索。
图7-56二部图示例
定理7.5.1无向图为二部图的充分必要条件为中所有回路的长度均为偶数。
证明先证必要性。
设是具有互补节点子集和的二部图。
是中任一长度为的回路,不妨设,则,,所以必为偶数,不然,不存在边。
再证充分性。
设是连通图,否则对的每个连通分支进行证明。
设只含有长度为偶数的回路,定义互补节点子集和如下:
任取一个顶点,令
现在证明中任意两节点间无边存在。
假若存在一条边,且,则由到间的最短路(长度为偶数),边和到间的最短路(长度为偶数)所组成的回路的长度为奇数,与假设矛盾。
同理可证中任意两节点间无边存在。
故中的每条边必具有形式,其中,,即是具有互补节点子集和的一个二部图。
利用定理7.5.1可以很快地判断出图7-57中的、是二部图,而则不是二部图。
图7-57
例7.5.1六名间谍被擒,已知懂汉语、法语和日语,懂德语、俄语和日语,懂英语和法语,懂西班牙语,懂英语和德语,懂俄语和西班牙语,问至少用几个房间监禁他们,能使在一个房间里的人不能直接对话。
解以六人为顶点,在懂共同语言的人的顶点间连边得图(如图7-58所示),因为中没有奇圈,所以是二部图(如图7-58所示),故至少应有两间房间即可。
图7-58
7.5.2匹配
二部图的主要应用是匹配,“匹配”是图论中的一个重要内容,它在所谓“人员分配问题”和“最优分配问题”等运筹学中的问题上有重要的应用。
首先看实际中常碰见的问题:
给个工作人员安排项任务,个人用表示。
并不是每个工作人员均能胜任所有的任务,一个人只能胜任其中个任务,那么如何安排才能做到最大限度地使每项任务都有人做,并使尽可能多的人有工作做?
例如,现有五个人,五项工作。
已知能胜任和,能胜任和,能胜任和,能胜任和,能胜任、和。
如何安排才能使每个人都有工作做,且每项工作都有人做?
显然,我们只需构造这样的数学模型:
以和(i,j=1,2,3,4,5)为顶点,在与其胜任的工作之间连边,得二部图,如图7-59所示,然后在中找一个边的子集,使得每个顶点只与一条边关联(图中粗线),问题便得以解决了。
这就是所谓匹配问题,下面给出匹配的基本概念和术语。
图7-59匹配问题示意图
定义7.5.2设无向图,中有边集,且在中任意两条边都没有公共的端点,称边集为图的一个匹配(Matching)。
中一条边的两个端点,叫做在下是配对的。
如果中不存在匹配,使得,则称为最大匹配(MaximumMatching)。
对于的一个匹配,若节点与中的边关联,则称是饱和的(Saturated),否则称是不饱和的。
定义7.5.3设二部图,是的一个匹配。
若,均是饱和的,则称是对的完全匹配(简称―完全匹配);
若,均是饱和的,则称是对的完全匹配(简称—完全匹配)。
若既是―完全匹配,又是―完全匹配(即图的每个顶点都是饱和的),则称是完全匹配(CompleteMatching)。
显然,完全匹配是最大匹配,但反之不然。
例7.5.2
(1)在图7-59中,边集是一个匹配,而且是是一个最大和完全匹配。
(2)在图7-60中,边集和,都是图的最大匹配,也是―完全匹配,但不是完全匹配。
在图7-60中,边集是完全匹配。
图7-60
为了寻求二部图的最大匹配,下面交替路和可扩路两个概念。
定义7.5.4设是一个二部图,是图的一个匹配,是中的一条路,如果是由属于和不属于的边交替出现组成,则称为的交替路(AlternatingPath)。
如果交替路的始点和终点都是不饱和点,则称为的可扩路(—ExtensiblePath)。
例如,在图7-60中,对于匹配,路,,,都是交替路,其中的始点和终点都是不饱和点,所以这两条路是可扩路。
可扩路具有如下性质:
可扩路的长度必为奇数,且属于的边比不属于的边少1条。
如果在一条可扩路中把属于中的边从匹配中去掉,把不属于中的边添入到匹配中,则得到新的匹配,的边数比多1。
例如,在图7-60中,对于匹配,是可扩路,将中属于中的边,,从匹配中去掉,把不属于中的边添入到匹配中,则得到新的匹配,中的边数由中的3条增至4条。
如果图中还存在可扩路,再按上面的步骤做,所得到的匹配的边数又多1,一直到图中不存在可扩路为止。
用此方法可逐步得到较大的匹配,直至得到最大匹配。
这就是下面的定理。
定理7.5.2在图中,为最大匹配的充分必要条件是不存在可扩路。
用反证法。
假设中存在一条可扩路,则可以得到比的边数多1的匹配,与为最大匹配矛盾。
所以中不存在可扩路。
假设不是最大匹配,则存在匹配,使得。
令(为对称差运算),设由导出的的子图,因为和都是的匹配,所以的任意顶点或是只与(或)中的一条边相关联,或是同时与的一条边及的一条边相关联,其度数至多为2,于是的每个连通分支或者是一个边交错地属于与的长度为偶数的回路,或者是边交错地属于与的长度为奇数的交错路。
由于,因而中必有一个连通分支,它所含的属于的边比属于的边多,不是回路(因为回路的长度均为偶数),它的起点和终点都是不饱和的,也一定是中的不饱和点,因此在中存在关于的可扩路,这与假设矛盾。
求一般图的最大匹配过程比较复杂,下面仅讨论如何在二部图中求最大匹配的问题。
设二部图,在中求最大匹配的关键是寻找可扩路。
通常是先构造的一个匹配,再看中有没有不饱和点。
如果没有,那么肯定是最大匹配了;
如果有,我们就从这些点出发找可扩路,由可扩路做出一个更大的匹配。
寻找可扩路的一个有效方法是标记法,其过程如下:
首先在中作一个匹配,用(*)标记中所有不饱和点,然后交替地进行以下步骤(1)和(2)。
(1)选一个的新标记过的节点,比如,用()标记不通过中的边与邻接且未标记过的的所有节点。
对所有新标记过的节点重复这一过程。
(2)选一个的新标记过的节点,比如,用()标记通过中的边与邻接且未标记过的的所有节点。
对所有新标记过的节点重复这一过程。
执行以上步骤,直至标记到一个中的不饱和点。
从该节点倒向追踪到标记有(*)的节点,就得到一条可扩路。
于是也就得到一个边数为||+1的匹配,再返回(1)。
如果已不可能标记更多的节点,而的所有标记的节点均为饱和点,则说明中已不存在可扩路,这时就是最大匹配。
例7.5.3图7-61是一个二部图,求其最大匹配。
图7-61
解取图7-61图的一个匹配。
用(*)标记中所有不饱和点。
(1)选的新标记过的节点,用()标记不通过中的边与邻接且未标记过的的节点;
类似地,用()标记。
(2)选的新标记过的节点,用()标记通过中的边与邻接且未标记过的的节点;
(3)选的新标记过的节点,因为不存在不通过中的边与邻接的的节点,所以不用()标记的节点;
用()标记或,假定用()标记。
是不饱和点,标记结束。
从倒向追踪到标记有(*)的节点,就得到一条可扩路或,取前者,由此得匹配。
对匹配再用标记法(见图7-61知,图中已不存在可扩路,所以就是最大匹配。
定理7.5.3(霍尔定理)二部图有―完全匹配,当且仅当对中任一子集,和所有与邻接的点构成的点集,恒有
假设是二部图的一个―完全匹配,则中的每个顶点均是饱和的。
对的任一子集,因的每个顶点在下和中不同的顶点配对,所以有。
假设是满足对任何的子集,的二部图,但中没有使中每个顶点饱和的完全匹配,设是的一个最大匹配,由假设,不使中所有顶点饱和。
设是中的不饱和点,并设是与有关于交错路相连通的所有顶点的集合。
由于是一最大匹配,由定理7.5.2可知:
为中唯一的不饱和点。
令=,,显然,中的顶点都关于饱和,即它与中的顶点在下配对,于是,且,又因中的每个顶点有关于交错路与相连通,因此,所以
与假设矛盾。
例7.5.4设有4个人,现有5项工作需要做,每个人所能胜任工作的情况如图7-62所示,问能否使每个人都能分配到一项工作?
图7-62
解这个问题即为:
二部图是否存在―完全匹配。
当取=时,=,因此,根据霍尔定理,二部图没有―完全匹配,所以要使每个人都能分配到一项工作是不可能的。
习题7.5
1.求下面两个二部图的最大匹配。
图7-63
2.假定是二部图,如何安排中顶点的次序可使的邻接矩阵呈形式,0为零矩阵。
3.某单位有7个工作空缺要招聘,有10个应聘者。
他们能胜任的工作岗位集合分别为:
,,,,,,,,,。
如果规定每个应聘者最多只能安排一个工作,试给出一种分配方案使落聘者最少?
4.设图是二部图,证明。
7.6平面图
7.6.1平面图的定义
在一些实际问题中,常常需要考虑一些图在平面上的画法,希望图的边与边不相交或尽量少相交。
如印刷电路板上的布线、线路或交通道路的设计、地下管道的铺设等。
下面举一个简单的例子。
例7.6.1一个工厂有3个车间和3个仓库。
为了工作需要,车间与仓库之间将设专用的车道。
为避免发生车祸,应尽量减少车道的交叉点,最好是没有交叉点,这是否可能?
如图7-64所示,,,是3个车间,,,是3座仓库。
经过努力表明,要想建造不相交的道路是不可能的,但可以使交叉点最少(如图7-64所示)。
此类实际问题涉及到平面图的研究。
近年来,由于大规模集成电路的发展,也促进了平面图的研究。
本节介绍平面图的一些基本概念和常用结论。
图7-64
定义7.6.1设是一无向图。
如果能把的所有节点和边画在平面上,使得任何两条边除公共端点外没有其他的交点,则称是一个平面图(PlanarGraph),或称该图能嵌入平面;
否则,称是一个非平面图。
直观上说所谓平面图就是可以画在平面上,使边除端点外彼此不相交的图。
应当注意,有些图从表面上看,它的某些边是相交的,但是不能就此肯定它不是平面图。
图7-65平面图和非平面图示例
例如,图7-65是无向完全图,它是平面图。
图7-65是无向完全图,它表面上看有相交边,但是把它画成图,则可以看出它是一个平面图。
图是平面图。
图经改画后得到图,图经改画后得到图,由定义知它们都是平面图。
而图、是无向完全图,和图7-64中的两个图,无论怎样调整边的位置,都不能使任何两边除公共端点外没有其他的交点,所以它们不是平面图,它们是两个最基本、最重要的非平面图,在平面图理论的研究中有非常重要的作用。
设是平面图,的以无交边的方式画在平面上的图称为平面图的平面嵌入(Imbedding)。
如图7-65中的、、分别为图、、的平面嵌入。
关于平面图,以下两个结论是显然的