有向グラフ 閉路検出 トポロジカルソート DAG