お気楽goプログラミングというサイト
http://www.geocities.jp/m_hiroi/golang/puzgo01.html
で幅優先探索を学んでいましたが、
makePathを使うところでappendと使うと
[0 2 4 6]を2回出力します。
プリントデバッグしたところ何度か同じものをキューに入れていますが
どうしてそのような動きをしているのかわかりません
appendでスライスに元となる配列部分を超えたところに代入をしようとすると元の配列をコピーした別の配列を作りその配列を参照しようとしているのだと思っていましたがそこが間違いではないかと思います。
元となるものではどうしてmakePathを定義したのか、私のプログラムはなぜ失敗したのか教えてください。
コードは
https://play.golang.org/p/8s1-bf7qFd
に置きました。