隣接行列でパスを見つけようとしていますが、常に次のエラー メッセージが表示されます。
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
at GraphApp.main(GraphApp.java:102)
これが私のコードです:
for (int i = 0; i < adjMat.length; i++)
for (int j = 0; j < adjMat[i].length; j++)
if (i < j)
if (adjMat[i][j] == 1) //
for (i = j + 1; i < adjMat.length; i++)
if (adjMat[i][j] == 1)
System.out.println("Graph conatains a path");
else
System.out.println("Graph doesn't contain a path");
たとえば、次のようなマトリックスがある場合:
0 1 1 1
1 0 1 0
1 1 0 0
1 0 0 0
たとえば、行列が対称であるため、もちろん最初のものを除いて、 1
inT[0][1]
に別の1
inがあるかどうかを確認する必要があります。T[i][1]