欧拉回路与欧拉通路存在性的充要条件及其证明

定理1:连通图中存在欧拉回路的充要条件是连通图中所有顶点的度数为偶数。

首先,我们来证明充分性,即存在欧拉回路则图中的所有顶点的度数必然为偶数。在图中任取一点,以该点作为起点,沿着欧拉回路走,当前顶点的出度为1,然后经过其它的顶点,注意到如果欧拉路径经过一个顶点(包括起点),它必然离开这个点,这样出入度之和为偶数,直到所有的边逐一被走过,回路的终点在起点处结束,使得起点的入度加1,这样经过起点的度数和变成偶数,欧拉回路结束(注意到我们未加说明的假设了边的个数是有穷的,因此这个过程必然结束)。

其次,我们来证明必要性,即如果连通图中所有顶点的度数为偶数,则必然存在欧拉回路。我们通过构造性的存在性证明来说明这一点(这里有一些证明方法的相关介绍)。首先,我们在连通图中找寻一条回路(回路的选取是任意的并且总是能找到的,由上述充分性的证明可以有效的说明这一点),如果这条回路就是欧拉回路,那么结论已然成立了,否则,我们删除掉该回路中的所有边,出现孤立的顶点就忽略它,那么子图(不一定是连通的,并且仍然满足所有顶点的度数都是偶数的性质)与删除掉的回路一定有公共顶点(图的连通性保证了这一点),以该点作为起点继续找寻回路,然后删除,续行此法,直到所有的边都被删除为止(同上述充分性的证明中一样,边的个数的有穷性保证了这个过程必然结束),所有这些删除的回路连接起来就构成了一条欧拉回路。

至此,我们完成了欧拉回路存在性的充要条件的证明,并且应当引起注意的是在构造性的存在性证明中我们给出了一种找寻欧拉回路的算法过程。

接下来,我们证明下述定理。

定理2:连通图中存在欧拉通路的充要条件是连通图中有且只用两个顶点的度数为奇数。

仍然先来证明充分性,即存在欧拉通路则图中有且只有两个顶点的度数为奇数,其他顶点的度数皆为偶数,注意到由于起点和终点是不同的,因此欧拉通路的起点和终点必然是两个奇数度的顶点,此外,不可能再有其他的奇数度的顶点了,因为我们沿着欧拉通路的起点走开来,只要经过一个顶点必然离开该顶点,一条入度边搭配一条出度边,共同为该顶点贡献偶数度,直到到达终点为止(当然,也可能再离开,只要终点还有边没有被走过)。

接下来,我们来证明必要性,即连通图中有且只有两个奇数度顶点,则必然存在欧拉通路,怎么来证明这一点呢?一种非常巧妙的方式是把欧拉通路做成欧拉回路,换句话说,我们连接两个奇数度顶点,这样连通图中所有顶点的度数均为偶数,由刚刚证明的定理1可知,该连通图存在欧拉回路,注意到只需把我们自己增加的那条辅助边删除,便证明了欧拉通路的存在性,我们再一次借助构造性的存在性证明来证明了这一点。

最后,一笔画的智力题弱爆了的感觉有木有:)。

All Rights Reserved.
Author:海峰:)
Copyright © xp_jiang.
转载请标明出处:http://www.cnblogs.com/xpjiang/p/4396106.html 以上。
时间: 2024-11-07 00:56:35

欧拉回路与欧拉通路存在性的充要条件及其证明的相关文章

关于欧拉回路、欧拉通路的一些定理及推论

关于欧拉通路.欧拉回路的一些定义: 无向图:G是一个连通的无向图(1)经过G的每条边一次并且仅一次的路径为欧拉通路(起点和终点不一定要一样).(2)如果欧拉通路是回路(起点和终点是同一个),则为欧拉回路.(3)具有欧拉回路的无向图G称为欧拉图. 有向图:D是一个有向图,D的基图(把D的有向边改为无向边)是连通的(1)经过D的每条边一次并且仅一次的路径称为有向欧拉通路(起点和终点不一定一样).(2)如果有向欧拉通路是回路(起点和终点一样),那么称为有向欧拉通路.(3)具有有向欧拉通路的有向图D称为

HDU 5883 F - The Best Path 欧拉通路 & 欧拉回路

给定一个图,要求选一个点作为起点,然后经过每条边一次,然后把访问过的点异或起来(访问一次就异或一次),然后求最大值. 首先为什么会有最大值这样的分类?就是因为你开始点选择不同,欧拉回路的结果不同,因为是回路,所以你的开始点就会被访问多一次,所以如果是欧拉回路的话,还需要O(n)扫一次,枚举每个点作为起点. 欧拉通路的话,结果是固定的,因为只能从奇数度小的那个点作为起点,奇数度大的那个点作为终点. 关于点的访问次数:anstime  = Degree[i] / 2; //如果是奇数的,还要加上一.

关于欧拉通路、欧拉回路的一些定理,推论

关于欧拉通路.欧拉回路的一些定义: 无向图:G是一个连通的无向图(1)经过G的每条边一次并且仅一次的路径为欧拉通路(起点和终点不一定要一样).(2)如果欧拉通路是回路(起点和终点是同一个),则为欧拉回路.(3)具有欧拉回路的无向图G称为欧拉图. 有向图:D是一个有向图,D的基图(把D的有向边改为无向边)是连通的(1)经过D的每条边一次并且仅一次的路径称为有向欧拉通路(起点和终点不一定一样).(2)如果有向欧拉通路是回路(起点和终点一样),那么称为有向欧拉通路.(3)具有有向欧拉通路的有向图D称为

图论——欧拉通路、欧拉回路(有向图无向图混合图)

之前稍微了解有向图.无向图.混合图的欧拉通路.欧拉回路,这里做下笔记,以便日后翻阅. 无向图: 存在欧拉回路的条件:原图连通,每个结点均为偶度结点. 存在欧拉通路的条件:存在欧拉回路,或原图连通,有两个结点为奇度结点,其他结点均为偶度结点. 有向图: 存在欧拉回路的条件:基图连通,每个结点的入度等于出度. 存在欧拉通路的条件:存在欧拉回路,或基图连通,有一个结点入度等于出度+1,有一个结点出度等于入度+1,其他结点的入度等于出度. 混合图: 存在欧拉回路的条件: 1.将无向边随便定向,每个结点的

POJ--1386--Play on Words【判断有向图欧拉通路、欧拉回路】

链接:http://poj.org/problem?id=1386 题意:要开启一扇门,n个单词是密码,n个单词中,如果一个单词的首字母和前一个单词的尾字母相同,并且每个单词都能这么连起来且只用一次,则门可以开启,否则不能开启,现给出单词,判断门是否可以开. 有向图欧拉通路充要条件:D为有向图,D的基图连通,并且所有顶点的出度与入度都相等:或者除两个顶点外,其余顶点的出度与入度都相等,而这两个顶点中一个顶点的出度与入度之差为1,另一个顶点的出度与入度之差为-1. 有向图欧拉回路充要条件:当D的所

一笔画问题 南阳oj42 【并查集+欧拉通路的判断】

描述 zyc从小就比较喜欢玩一些小游戏,其中就包括画一笔画,他想请你帮他写一个程序,判断一个图是否能够用一笔画下来. 规定,所有的边都只能画一次,不能重复画. 输入 第一行只有一个正整数N(N<=10)表示测试数据的组数. 每组测试数据的第一行有两个正整数P,Q(P<=1000,Q<=2000),分别表示这个画中有多少个顶点和多少条连线.(点的编号从1到P) 随后的Q行,每行有两个正整数A,B(0<A,B<P),表示编号为A和B的两点之间有连线. 输出 如果存在符合条件的连线

有关欧拉通路/回路的一些资料整理

这两天看了下欧拉回路,整理下资料,以备以后回顾. 1.欧拉回路,欧拉通路,欧拉图 无向图: 1)设G为连通无向图,则称经过G的每条边一次仅且一次的路径为欧拉通路. 2)如果欧拉通路是回路(起点和终点是同一个顶点),则称此回路为欧拉回路. 3)具有欧拉回路的无向图G称为欧拉图. 有向图: 1)设D是连通有向图,则称经过G的每条边一次仅且一次的有向路径为有向欧拉通路. 2)如果有向欧拉通路是回路,则称此回路为有向欧拉回路. 3)具有有向欧拉回路的有向图G称为有向欧拉图. 2.定理及推论 定理1:无向

POJ 1386 Play on Words(有向欧拉通路 连通图)

题意  见下方中文翻译 每一个单词能够看成首尾两个字母相连的一条边  然后就是输入m条边  推断是否能构成有向欧拉通路了 有向图存在欧拉通路的充要条件: 1. 有向图的基图连通: 2. 全部点的出度和入度相等  或者  仅仅有两个入度和出度不相等的点  且这两点入度与出度的差一个为-1(起点)一个为1(终点). 推断是否连通就是应用并查集了 #include<cstdio> #include<cstring> using namespace std; const int N = 3

poj 2513 Colored Sticks(欧拉通路+并查集+字典树)

题目链接:poj 2513 Colored Sticks 题目大意:有N个木棍,每根木棍两端被涂上颜色,现在给定每个木棍两端的颜色,不同木棍之间拼接需要颜色相同的 端才可以,问最后能否将N个木棍拼接在一起. 解题思路:欧拉通路+并查集+字典树.欧拉通路,每个节点的统计度,度为奇数的点不能超过2个.并查集,判断节点 是否完全联通.字典树,映射颜色. #include <cstdio> #include <cstring> #include <string> #includ