2

javascriptでランダムな迷路ジェネレーターを作成しようとしています。

すでに実用的な例があるかもしれませんが、私はこれを自分で解決しようとしています(まあ、可能な限り)

私が抱えている問題は、スクリプトが数ブロックだけ実行されてから停止することです。

問題は、私がフォローしている説明を理解していることにあると思います(このウィキペディアのページhttp://en.wikipedia.org/wiki/Maze_generation_algorithmから)

このアルゴリズムは、プリムのアルゴリズムのランダム化されたバージョンです。

  1. 壁でいっぱいのグリッドから始めます。

  2. セルを選択し、迷路の一部としてマークします。セルの壁を壁リストに追加します。

  3. リストに壁がありますが:

    1. リストからランダムな壁を選びます。反対側のセルがまだ迷路に入っていない場合:

      1. 壁を通路にし、迷路の一部として反対側のセルに印を付けます。

      2. セルの隣接する壁を壁リストに追加します。

    2. 反対側のセルがすでに迷路に入っている場合は、リストから壁を削除します。

私がハイライトしたように、私の問題はこれの反対側の 部分にあります。これは、ウォールリストにある隣接セルを意味しますか?それとも何か他の意味ですか?

隣接するセルで試してみましたが、でブロックされてしまいます。

任意のアイデアをいただければ幸いです。

動作させることができれば、完了したらコードを投稿します。私が言ったように、私は完全な解決策の助けを得る前に自分で遠くまで行きたいと思っています。

4

1 に答える 1

0

壁は、2つの異なるセル間の接続を表します。壁を壁リストに追加する場合、それは迷路の一部となるセルにアクセスしているためです。したがって、反対側のセルを指す場合は、その壁の「背後」にあるセルを意味します。その壁はありませんでした。

于 2012-02-29T22:23:00.697 に答える