トポロジカルソートを行うプログラムを作成し、コンパイルして実行せよ。
ただし、ソーティングを行うグラフは下記の2つを用意するので、どちらについても実行結果を示すこと。
ソースコードはGraphAに対する実行時のものだけでよい。
Graph A | Graph B |
|
|
【注意】 | |
誰かに教えてもらった場合: | その学生(氏名と9桁の学籍番号)をプログラム先頭に記し、さらにプログラム中コメントを使って、教えてもらったところの解説を数行以上書き込むこと。(教えてもらった部分の解説コメントのないプログラムは全く評価しません。「全体です」のようなコメントの場合も同じです。) |
誰かに教えてあげた場合: | その学生(氏名・学籍番号)をプログラム先頭に記すこと。 |
お互いに相談した場合: | 教えてもらった・教えてあげたの例に準拠して提出してください。 |
プログラム先頭の様子 |
|
有向グラフに対してトポロジカルソーティングを行う場合、そのグラフはどのような性質を満たす必要があるか考察せよ。
連結無向グラフである隣接行列が与えられたときに、そのグラフ中に少なくとも1つの閉路があることを検出できるプログラムを作成せよ。
<ヒント:閉路がないグラフは何と呼ばれるか?>