基于JAVA的迷宫问题

magipige

发布日期: 2018-12-06 16:44:52 浏览量: 2483
评分:
star star star star star star star star star_border star_border
*转载请注明来自write-bug.com

1 题目要求

1.1 问题描述

以一个m*n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。

1.2 基本要求

  • 实现一个以链表作存储结构的栈类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(i, j, d)的形式输出,其中,(i, j)指示迷宫的一个坐标,d表示走到下一坐标的方向。

  • 编写递归形式的算法,求得迷宫中所有可能的通路;

  • 以方阵形式输出迷宫及其通路

2 设计思路

  • 用‘穷举解法’方法解决迷宫问题 ,储存结构:用栈储存

  • 建立一个二维数组表示迷宫的路径(0表示通道,1表示墙壁)

  • 创建一个栈,用来存储“当前路径”,即“在搜索过程中某一时刻所在图中某个方块位置”。

  • 创建一个Int类型的二维数组intmaze[n1][n2],用来存放0和1 ;

  • 创建一个结构体用来储存数组信息(数组的横坐标X,数组的纵坐标Y,方向C)

  • 创造一个栈包括(top表示栈顶元素)

类图

3 测试

  • 测试环境

    • Windows10
    • JDK1.8
    • IDEA2017.2
  • 输入数据

  • 测试结果

上传的附件 cloud_download 基于JAVA的数据结构课程设计-迷宫问题.zip ( 39.92kb, 288次下载 )
error_outline 下载需要9点积分

发送私信

生活不会因为你是女孩子就善待你

11
文章数
15
评论数
最近文章
eject