欧拉图
定义
通过图中所有边恰好一次且行遍所有顶点的 通路 称为欧拉通路。
通过图中所有边恰好一次且行遍所有顶点的 回路 称为欧拉回路。
具有欧拉回路 的无向图或有向图称为 欧拉图 。
具有欧拉通路但不具有欧拉回路 的无向图或有向图称为 半欧拉图 。
非形式化地讲,欧拉图就是从 任意一个点 开始都可以一笔画完整个图,半欧拉图必须从 某个点 开始才能一笔画完整个图 。
求欧拉回路 \(/\) 欧拉通路
常用的是 \(\operatorname{Hierholzer}\) 算法,也称逐步插入回路法 。
从一条回路开始,每次任取一条目前回路中的点,将其替换为一条简单回路,以此寻找到一条欧拉回路。如果从路开始的话,就可以寻找到一条欧拉路。
优化:将找回路的 \(\operatornam