数据结构的应用——使用栈实现任意迷宫的求解

来源:互联网 发布:python运维开发面试题 编辑:程序博客网 时间:2024/06/05 04:11

一个迷宫可以用如下的二维矩阵来表示

其中,1表示“墙壁”(红色部分)

0表示“通路”白色部分

黄色的单元格分别表示迷宫的入口和出口,用二维矩阵来表示则为:

 

由用户输入的高和宽来随机产生的迷宫,生成二维数组,然后由随机生成的0或1来填充数组,以达到随机生成迷宫,其方法如下:

 

对于路径的嗅探,我们首先创建一个Point类,来存放每个点的坐标,然后定义一个栈,来存放当前路径所经过的点,具体求解算法如下:

原创粉丝点击