具有唯一拓扑排序的图形的先决条件

时间:2011-11-11 20:51:16

标签: graph directed-acyclic-graphs

让我们假设所讨论的图是DAG(有向无环图)。

问题:我是否可以得出这样的结论:当且仅当其中一个顶点没有传入边时,此图将具有唯一的拓扑排序?

换句话说,只有一个顶点没有必要(但不够)的入射边缘来生成唯一的拓扑排序?

5 个答案:

答案 0 :(得分:11)

当且仅当拓扑顺序中每对连续顶点之间存在有向边(即,有向图具有Hamiltonian path)时,拓扑排序才是唯一的。 Source

哈密顿路径只意味着两个顶点之间的路径只会访问每个顶点一次,但这并不意味着一个顶点必须没有传入边。您可以拥有一条哈密尔顿路径,实际上是cycle。这仍然会产生一种独特的拓扑排序(当然,如果这对你来说很重要,它也会是一个循环)。

希望这有帮助

答案 1 :(得分:3)

Haaaaa,好的。对不起有误。

在这种情况下,我认为你是对的,这是一个证明草图:

我们有一个独特的topologiacl sot =>我们只有一个顶点,它可以放在第一位=>对于每个顶点,执行一个,放在第一位并不是很好的=>对于每个顶点,只需要一个顶点,我们就会有无用的边缘。

希望现在我回答了你的问题......

答案 2 :(得分:2)

没有!下图只有一个没有入边的顶点,有两种可能的解决方案。

1 -> 2
3 -> 4
3 -> 1
4 -> 2

两种解决方案是:

2 0 3 1
2 3 0 1

答案 3 :(得分:0)

是的,你可以说这是一个必要条件,好像有多个节点,其中in-degree = 0,那么就不会有哈密顿路径,因此没有唯一的拓扑顺序。仅对于图的起始节点(in-degree = 0)将没有入射边缘,其余所有顶点必须具有来自其拓扑祖先的入射边缘,这意味着节点在拓扑排序中位于当前节点之前。如果拓扑排序中的每个连续节点都没有边缘,则DAG将不具有唯一的顺序。

答案 4 :(得分:0)

有人给出了答案。在这里,我只想给你一个反例:G = {(1,2),(1,3)}。在这种情况下,有2种有效的拓扑排序:1,2,3和1,3,2