如何按特定顺序遍历有向无环图的所有节点?

How to traverse all nodes of a Directed Acyclic Graph in a specific order?

我有一个问题,我需要按特定顺序遍历有向无环图的所有节点,因为一些 nodes/vertices 依赖于多个其他 nodes/vertices.

的结果

在这种情况下,DFS 或 BFS 将不起作用。

像这样遍历 DAG 需要多少 solution/algorithm/ 个线程?

我是否也应该订购节点?例如:那个不依赖于其他任何东西的节点 - 首先是节点 A,然后是节点 B,然后是 C(依赖于节点 A 和节点 B).. 预先?

答案是拓扑排序,可以使用

实现
  • 卡恩算法
  • 深度优先搜索或
  • 并行算法

感谢@beaker