我根据Prim的算法编写了一个迷宫生成器程序:
该算法是Prim算法的随机版本。
从一个满是墙的网格开始。
选择一个细胞,标记为迷宫的一部分。将单元格的墙壁添加到墙列表中。
当列表中有墙壁时:
从名单上随机选一堵墙。如果对面的细胞还没有在迷宫中:
使墙壁成为一条通道,并将对面的细胞标记为迷宫的一部分。
将单元格的相邻墙壁添加到墙列表中。
1. If the cell on the opposite side already was in the maze, remove the wall from the list.
(来自)
我已
我在用递归法解决这只老鼠的问题。给出了一个迷宫作为块的N*N二进制矩阵,其中源块是最左上的块,即迷宫,目标块是最右下的块,即mazeN-1。一只老鼠从源头开始,必须到达目的地。老鼠只能朝两个方向移动:向前和向下。在迷宫矩阵中,0表示块是死胡同,1表示块可以在从源到目的地的路径中使用。请注意,这是典型迷宫问题的一个简单版本。
这个代码是我自己写的,但是输出没有显示。
#include <stdio.h>
//#where a[][] means denoting maze and b[][] means solution matrix and i put all zero in b
我正在创建一个迷宫生成器,它根据用户需要的行数/列数随机生成一个迷宫。我只能在每次生成迷宫时创建一个新的JFrame,而不是更改现有的框架。
我试着在main中创建一个JFrame,然后用它来改变大小,我试着把它设置为公共的,然后在按钮中改变它。
Frame()类
public class Frame extends JFrame {
private VariableDetails vDetails;
private MazeArea mArea;
private int width;
private int height;
public Frame