DAG の BFS 走査を行うエレガントな Python プログラムを探しています。
A が B に「依存」している場合、ノード A は B ( A->B
) に接続されます (Python パッケージ Foo が「Bar: Foo->Bar に依存している」と考えてください)。
このような約 7000 のノードのグラフで、すべてのノードを並べ替えて、.. が False になるようにしたいと考えて(i, j)
い1>=i<j<=7000
ますdepends(Ni, Nj)
。depends(A, B) = True の場合A->B
または A が B に「依存」し、ソートされたリストの 番目の位置にNx
あるノードである場合に限ります。x
注: ノードは複数の親を持つことができます。例: A->C および B->C。したがって、上記のソート規則によれば、A と B は C の前に来る必要があります。