我们如何在O(V + E)中构造一个算法来计算在每个方向上精确遍历G的每个边缘一次的路径

时间:2015-11-24 23:28:00

标签: algorithm graph time-complexity

考虑非定向的连通图G.我们如何在O(V + E)中构造一个算法来计算在每个方向上精确遍历G的每个边的路径

1 个答案:

答案 0 :(得分:1)

具有该属性的路径称为Eulerian path。当且仅当每个节点具有偶数度或者恰好有两个奇数度的节点时,存在一个说这样的路径的定理。

有很多算法可以在线性时间内构建欧拉路径。一般的想法是(通常)绕着图形走,直到你得到一个循环,然后通过使用未使用的边来扩展它来不断增加该循环中的边数。您可以阅读有关这些算法的更多信息at this link.