没有合适的资源?快使用搜索试试~ 我知道了~
迷宫问题 假设迷宫由m行n列构成,有一个入口和一个出口,入口坐标为(1,1),出口坐标为(m,n),试找出一条从入口通往出口...
4星 · 超过85%的资源 需积分: 50 102 下载量 68 浏览量
2010-06-04
14:41:44
上传
评论 6
收藏 73KB DOC 举报
温馨提示
试读
7页
题目:假设迷宫由m行n列构成,有一个入口和一个出口,入口坐标为(1,1),出口坐标为(m,n),试找出一条从入口通往出口的最短路径。设计算法并编程输出一条通过迷宫的最短路径或报告一个“无法通过”的信息。 要求:用栈和队列实现,不允许使用递归算法。
资源推荐
资源详情
资源评论
题目:假设迷宫由 行 列构成,有一个入口和一个出口,入口坐标为,,出口坐标为
,,试找出一条从入口通往出口的最短路径。设计算法并编程输出一条通过迷宫
的最短路径或报告一个“无法通过”的信息。
要求:用栈和队列实现,不允许使用递归算法。
一、 需求分析
用户可以根据自己的需求进行输入所需的迷宫,其中 表示迷宫的墙壁, 表示迷宫的通
路,从而建立自己的迷宫;
用户还可以自己设计迷宫的入口坐标,当然也可以设计出口了;
程序执行的命令包括:
()构造栈 ()构造抽象迷宫数组 ()输出迷宫 ()在迷宫中寻
找一条最短的通路 ()打印出所找到的最短通路
二、概要设计
⒈为实现上述算法,需要线性表的抽象数据类型:
数据对象:
!"!#$
数据关系:%&
'
!
(
'
!
!!"#$
基本操作
)
操作结果:构造一个空的栈 。
*+,
初始条件:栈 已经存在
操作结果:返回 中数据元素的个数。
-.
初始条件:栈 已经存在
操 作 结 果 : 判 断 中 是 否 为 空 , 若 为 空 , 则 返 回 /% , 否 则
0*。
12-!)
初始条件:栈 已存在且不为空
操作结果:用 返回 的栈顶的元素。
34,)!
初始条件:栈 已存在
操作结果:插入元素 为新的栈顶元素。
32-),)
初始条件:栈 已存在且不为空
操作结果:删除 的栈顶元素,并用 返回其值。
$*
本程序有三个模块:
⑴主程序模块
初始化;
接受命令;
显示结果;
1
资源评论
- XIAOSHUANGLIANG2012-07-10没有看明白,流程不够清晰
- panda_vip2013-03-22基本的迷宫算法,有点参考价值吧。 不过类似这种搜索算法自己写起来还是比较容易的。
- GavinCee2013-06-15叙述性的太长了,但是还是有可用的地方
wk751802943
- 粉丝: 1
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Screenshot_20240427_031602.jpg
- 网页PDF_2024年04月26日 23-46-14_QQ浏览器网页保存_QQ浏览器转格式(6).docx
- 直接插入排序,冒泡排序,直接选择排序.zip
- 在排序2的基础上,再次对快排进行优化,其次增加快排非递归,归并排序,归并排序非递归版.zip
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
- 课设-内部排序算法比较 包括冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序.zip
- Python排序算法.zip
- C语言实现直接插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序、归并排序、计数排序,并带图详解.zip
- 常用工具集参考用于图像等数据处理
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功