欧拉路、欧拉回路
定义 给定一个连通图,如果存在图中一条路径,经过且恰好经过每条边一次,则称这条路径为这个图的欧拉路(Eulerian Path),这张图叫做一张欧拉图(Eulerian Graph)。特别地,如果这条路径是一个回路则称其为欧拉回路(Eulerian Circuit)。
那么根据上述定义,我们有下列欧拉图的判定定理。
定理 对于有向图 \(G = (V,E)\) 中的一个顶点 \(u\),其入度 \(in(u)\) 定义为连向它的边的个数,出度 \(out(u)\)定义为从它连出的边的个数。如果图 \(G\) 满足
\[\forall u\in V,|in(u) - out(u)|\leq1, \sum_{u\in V}[|in(u)-out(u)|=1]\leq2
\]
则其上必然有一条欧拉路,特别地,如果条件二中的 2 改为 0,则其上必然有一条欧拉回路。
而对于无向图,我们有类似的判定定理。我们记无向图 \(G\) 的一个顶点 \(u\) 的度 \(deg(u)\) 为它所伸出的边的个数。则如果无向图满足:
\[\sum_{u\in V} deg(u) \bmod 2\leq2
\]
则其上必然有一条欧拉路,而如果条件中的 2 改为 0,则必然有一条欧拉回路。