拓扑排序DAG

时间:2015-04-26 13:32:42

标签: parsing sorting compiler-construction directed-acyclic-graphs topological-sort

我有一个dag(树),其中有向边只有三种:

  1. 从左到右(兄弟姐妹)
  2. Child to Parent
  3. 孩子的父母
  4. 具体来说,问题是评估属性解析树,但具体问题是什么并不重要。

    排序:

    enter image description here

    什么遍历可以保证拓扑节点的拓扑?

    我认为inorder会失败,但有些地方建议顺序是要走的路。我知道在一般DAGS上反向发布顺序,但我认为必须对我的情况进行更简单的遍历。

1 个答案:

答案 0 :(得分:0)

由于图形是DAG,因此没有后缘,因此可以使用深度优先搜索来遍历图形,并按照节点从DFS堆栈中脱出的顺序将其添加到排序列表中。 / p>