CheckLink機能のために働いていませんelse。再帰関数は、私は、コードの下に持っているが、私はそのは私にStackOverflowのエラーを与えてチェック機能を実行しようとすると、私はそれにそのはまで行くのをデバッグするとき</p> <p>を助けてください
注:私は私のコレクションでこのデータを持っている : {1 = [2、3]、2 = [3]、3 = [4]、4 = [3]、5 = [6] 6 = [5]}
どのように私は2つのノード
private Map<Integer, ArrayList<Integer>> graphList = new HashMap<Integer, ArrayList<Integer>>();
private boolean checkLink(ArrayList<Integer> dataListFirst, int match) {
if (dataListFirst != null) {
for (int data : dataListFirst) {
if (data == match) {
return true;
} else {
checkLink(graphList.get(data), match);
}
}
}
return false;
}
グラフに周期がある場合はどうなりますか?それは決して終わらない再帰とStackOverlowErrを説明するでしょう。 – Eran
それから、私は与えられた(1,3) –