图G的一个回路,若他通过每个节点一次,就是哈密顿回路
有一个判定条件是设图G具有n个定点的无向联通图,如果图G任意两个定点度数之和大于n,则G具有哈密顿回路,满足这个条件则一定是哈密顿图,但是哈密顿图不一定满足这个条件,最简单的例子就是一个n阶圈图
目前判断哈密顿回路没有高效的算法,因此大多数情况会要求你输出这个哈密顿回路,可以通过这个判定条件进行构造
1.任意找俩个相邻的节点S,T通过这两个节点向两头扩展直到不能扩展为止,因此所有与节点S,T相邻的节点全部在这条链上
2.若S与T相邻则形成了回路,若不相邻则需要构造出一个回路,设这条链上有k+2个节点,因为k≤N-2,又因为d(S)+d(T)≥N,因此必定存在vi和vj与S,T都相邻,并且满足j=i+1,因此可以把路径变为S->vi->T->vj则形成了一个回路
3.因为已经构造出了一个没有重复节点的回路,因此现在需要判断这条环路上的节点个数是否为N,如果