DAG是下图吗?

时间:2018-03-22 18:22:31

标签: data-structures graph directed-acyclic-graphs

我经历过DAG的多个定义,并且所有人都说这是一个没有周期的有向图。此外,据说它具有拓扑排序。

现在下图是有向图,没有周期。

Directed graph with no cycles edges are (0,1),(0,2),(2,1)

但是看看边缘的排序(看边缘(2,1)),它没有拓扑排序。

这仍然是DAG还是每个边缘必须在拓扑上排序才能使此图形为DAG?

1 个答案:

答案 0 :(得分:2)

是的,这是DAG。要检查:您无法从一个节点进入并按照图表中的边缘再次到达它。事实上,图表是完整的有向无环图,在某种意义上它保持3个节点的DAG中可能的最大边数。添加任何新边缘会将其转换为循环有向图。

对于完整的DAG,只有一个拓扑顺序。在您的情况下,它是0> 2> 1。

生成拓扑排序的非正式方法:

  1. 选择源 - 具有零入射边缘的源(如果有的话) 很多,选择任何人)。
  2. 从图表中删除它(当然是带有传出边缘)。
  3. 重复,直至最终得到空图。