欧拉回路的一些东西
定理:
无向图G存在欧拉通路的充分必要条件:G为连通图,并且G仅有两个奇度结点(度数为奇数的节点)或者无奇度结点。
推论1:当无向图G是有两个奇度的连通图时,G的欧拉通路必定以这两个结点为端点。
推论2:当无向图G是无奇度的连通图时,G必有欧拉回路。
有向图D存在有向欧拉通路的充分必要条件:D为有向图,D的基图连通,并且所有顶点的出度与入度都相等(情况1);或者除了两个定点外,其余顶点的出度与入度都相等,而这两个顶点中,一个顶点的出度与入度之差为1,另一个出度与入度只差为-1(情况2)。
推论(1):情况1说明存在的是有向欧拉回路。
推论(2):情况2说明存在的是有向欧拉通路,通路以出度与入度之差为1的顶点作为起点,以出度与入度之差为-1的顶点作为终点。
起点的选定:
寻找欧拉回路要分为两种情况:
图中存在一个或两个度数为奇数的点,这是,起点必须是度数为奇数的点,必然的,终点必须为另一个度数为奇数的(如果是两个度数为奇数的点)
图中的点的度数都是偶数,这就可以任意起点
至于之后怎么搞,直接dfs,每次遍历时给边打上限制标记,回溯时记录路径