【发布时间】:2012-02-29 22:06:36
【问题描述】:
我正在尝试在 javascript 中创建一个随机迷宫生成器。
可能已经有工作示例,但我正在尝试自己解决这个问题(嗯,尽可能多)
我遇到的问题是我的脚本只运行了几个块然后停止。
我认为问题在于我对我所遵循的解释的理解(来自此维基百科页面http://en.wikipedia.org/wiki/Maze_generation_algorithm)
此算法是 Prim 算法的随机版本。
从一个充满墙壁的网格开始。
选择一个单元格,将其标记为迷宫的一部分。将单元格的墙壁添加到墙壁列表中。
-
虽然列表中有墙:
-
从列表中随机选择一堵墙。如果对面的牢房还没有进入迷宫:
将墙壁设为通道,并将对面的单元格标记为迷宫的一部分。
将单元格的相邻墙添加到墙列表中。
如果对面的牢房已经在迷宫中,请从列表中删除墙。
-
正如我所强调的那样,我的问题在于其相反的一面。这是否意味着我们墙列表中的任何相邻单元格?还是有别的意思?
我已经用相邻的单元格尝试过,它最终只是把自己挡在了里面。
任何想法都将不胜感激。
如果我可以让它工作,我会在完成后发布代码。正如我所说,在获得完整解决方案的帮助之前,我想自己走得更远。
【问题讨论】:
-
如果这是家庭作业,请标记它。
-
哈哈哈根本没有!我一直在玩一个 a* 寻路算法,我想为它做一个迷宫!
标签: javascript maze prims-algorithm