简介
1857年爱尔兰数学家哈密尔顿发明了“周游世界”玩具,用一个正十二面体的20个顶点表示世界上20个大城市,30条棱代表这些城市之间的道路。要求游戏者从任意一个城市(即顶点)出发,延棱行走经过每个城市一次且只经过一次,最终返回出发地。哈密尔顿将此问题称为周游世界问题,并且作了肯定的回答。
以下是一种走法
与之等价的可以做成平面图,按这个编号走是可行的
哈密尔顿道路与哈密尔顿回路
哈密尔顿道路:通过图G中每个顶点一次且仅一次的道路称作该图的一条哈密尔顿道路.
哈密尔顿回路:通过图G中每个顶点一次且仅一次的道路称作该图的一条哈密尔顿回路.
哈密尔顿图:存在哈密尔顿回路的图称作哈密尔顿图.
由定义可以看出,是否存在自环和重边不影响哈密尔顿道路/回路的存在性,因此以后只需考虑简单图的情况。(自己想为什么)
尽管欧拉图问题和哈密尔顿问题类似(前者是经过每条边一次且仅且一次,后者是经过每个顶点一次且仅且一次),但后者却要困难得多。哈密尔顿问题的判定和构造都困难得多(它是1972年证明得第一批NPC问题),至今尚未找到一个简单得充分必要条件去判定一个图是否是哈密尔顿图。
一些充分条件
基本判断:
1、哈密尔顿图一定不存在悬挂边,至多存在哈密尔顿道路
2、哈密尔顿图中不存在孤立顶点
3、n≥2时,Kn是哈密尔顿图,Kn表示n阶完全图
我们有一个直观的感受——只要图G中有“足够多”得边,那么它就会是哈密尔顿图
定理1:假设G是一个n(n≥2)阶简单图,如果G中任意一对顶点u和v,都满足dge(u) + deg(v) ≥ n-1,则G中存在哈密尔顿道路 证明略(推荐)
定理2:假设G是一个n(n≥3)阶简单图,如果G中任意一对顶点u和v,都满足dge(u) + deg(v) ≥ n则G中存在哈密尔顿回路
推论1:假设G是一个n(n≥3)阶简单图,如果G中任意顶点的次数都至少是n/2,则G是哈密尔顿图
推论2:假设G是一个(n,m)简单图,若m≥(n^2 - 3n + 6)/2,则G是哈密尔顿图
注意,上述都只是充分条件,不是必要条件
充要条件
首先引入一个定义
定义:设无向简单图G,若存在一对不相邻顶点u,v,使得deg(u)+deg(v)≥n,则构造G’ = <V,E U {u,v}>;再在G’上重复上述过程直至不再存在度数之和大于或等于n的不相邻的顶点对为止,称这样所得到的图称为图G的闭包,记为C(G).
如图所示,右边C(G)是左边G的闭包.
定理1:设无向简单图G,且对G中任意一对不相邻的顶点(u,v),有deg(u)+deg(v)≥n,则G是哈密尔顿图的充分必要条件是G’ = <V,E U {u,v}>是哈密尔顿图
定理2:设无向简单图G,则G是哈密尔顿图的充分必要条件是C(G)是哈密尔顿 该定理可由定理1直接得到
应用实例
实例一:
假设在n(n≥4)个人中,任意两个人合在一起都能认识其余的n-2个人。证明他们可以围成一圈,使相邻者相互认识。
证:以每个人为顶点,相识者之间加边,便构成一个图G,问题转化为证明图G是哈密尔顿图。
分类讨论,对任意两个顶点u,v,若u,v认识,deg(u)+deg(v)≥n-2+1+1=n;若u,v不认识,考虑与u相识的w,w与v必定相识,否则的话,与u,v在一起能认识n-2个人矛盾,所有可以得出结论,u,v认识的人相同(n-2个),deg(u)+deg(v)=n-2+n-2≥n,由前面定理2知,图G为哈密尔顿图。
实例二:
地图不存在相交的边界。如果一个地图存在哈密尔顿回路,则可以用四种不同的颜色对它的域进行染色,使相邻的域染不同的颜色。
证:设H是图G中一条哈密尔顿回路,则H将G的域划分成内域和外域两部分,内域和外域均用两种颜色染色,则四种颜色即可。
如果内域和外域不能用两种颜色着色,则必然出现三个或三个以上的域相邻的情况,这是,内域(外域)中定有一个域的交点,它没有被H穿过,与H是哈密尔顿回路矛盾.
实例三:
有七名科学家参加一个会议,已知A会将英语,B会将英语和中文,C会将英语、意大利语、俄语,D会将日语、中文,E会德语和意大利语,F会将法语、日语、俄语,G会将德语、法语。是否可以安排他们在一个圆周围桌,使得相邻的科学家都可以用相同的语言交流?
解:顶点表示科学家,如果两个科学家会共同的语言,则连一条边,原问题转化为求图的哈密尔顿回路。如图
任取其中一条哈密尔顿回路(可能不唯一)就是围桌方案