数据结构java实验三
更新时间:2023-10-19 06:01:01 阅读量: 综合文库 文档下载
《数据结构(JAVA)》综合性、设计性实验成绩单
开设时间:
班级 学号 姓名 实验题目实验三 栈和队列及递归算法 成绩 教师签名
《数据结构(JAVA)》
实 验 报 告
实验题目: 栈和队列及递归算法 指导教师: 实验组长(姓名+学号): 组员(姓名+学号):
实验时间:
组长签名:
一、实验报告撰写提纲
1、实验目的
1. 理解栈和队列抽象数据类型,掌握栈和队列的存储结构和操作实现,理解栈和队列
在实际应用问题的作用。
2、实验内容
(1) (2) (3) (4)
使用一个栈,将十进制转换成二进制。
分别用循环单链表、循环双链表结构设计队列,并讨论他们之间的差别。 使用3个队列分别保留手机最近10个“未接来电”、“已接来电”、“以拨电话”。 走迷宫。
一个迷宫如图所示,他有一个入口和一个出口,其中白色单元表示通路,黑色单元表示不通路。试寻找一条从入口到出口的路径,每一部只能从一个白色单元走到相邻的白色单元,直至出口。分别用站和队列求解问题。 入口 出口 (5)骑士游历 骑士游历问题是指,在国际象棋的棋盘(8行*8列)上,一个马要遍历棋盘,即走到棋盘上的每一格,并且每隔只到达一次。设码在棋盘的某一位置(x,y)上,按照“走马日”的规则,下一步有8个方向走,如图所示。若给定起始位置(x0,y0),使用站和队列探索出一条马遍历棋盘的路劲。 1 2 3 4 5 6 7 8 7 6 8 5 马 1 4 2 3 3、实验步骤与结果 (1)①审题:使用一个栈,将十进制转换成二进制。
②编程:本代码使用了一个顺序栈SeqStack,编写一个循环让十进制数除2的余数入站,然后让全部余数出栈,输出二进制数。
③验证结果:
图 1
(2)①审题:分别用循环单链表、循环双链表结构设计队列,并讨论他们之间的差别。 ②编程:首先先编写一个队列抽象数据类型QQueue,然后编写循环单链表SlinkedQueue和 双链表DlinkedQueue逐一实现Qqueue中的三个方法,即判断是否队列为空、入队和出队。循环双链表所占的时间复杂度和空间复杂度比单链表多。 ③验证结果:两个均可被调用。
(3)①审题:使用3个队列分别保留手机最近10个“未接来电”、“已接来电”、“以拨电话”。 ②编程:1—10代表未接来电,11—20代表已接来电,21—30代表以拨电话,编写三个顺序栈stack1,stack2,stack3,运用条件语句存储10个号码,然后输出。
③验证结果:
图 2
(4)①审题:一个迷宫,他有一个入口和一个出口,其中白色单元表示通路,黑色单元表示不通路。试寻找一条从入口到出口的路径,每一部只能从一个白色单元走到相邻的白色单元,直至出口。分别用站和队列求解问题。 ②编程:暂时做不出 ③验证结果:
(5)①审题:骑士游历问题是指,在国际象棋的棋盘(8行*8列)上,一个马要遍历棋盘,即走到棋盘上的每一格,并且每隔只到达一次。设码在棋盘的某一位置(x,y)上,按照“走马日”的规则,下一步有8个方向走,如图所示。若给定起始位置(x0,y0),使用站和队列探索出一条马遍历棋盘的路劲。
②编程:利用预见算法解这类问题,以二维数组chessboard表示棋盘并保存问题的一个解;将棋盘上一格的位置(x,y)声明为一个内部类Position;start(x,y)方法从(x,y)格开始游历,初始位置p=new Position(x,y);判断是否满n*n,不满的话选择一个方向direction=select(p);判断是否有方向可选,有的话步数加1,向所选方向前进一步p=goaStep(p,direction),递归执行上述算法;如果无方向可选,则无路可通;当慢n*n步时,成功输出。
③验证结果:
图 3
4、源码
见附录:附录中的源代码在同一个包中。
5.结论与讨论
通过本次试验,我们刚开始时遇到了很多问题,比如说做骑士游历这道题,刚看到他们的时候根本就是无法下手,但经过我们小组的讨论,我们最后解决 了这道题。但对于走迷宫这道题,有本小组知识有限,思考能力也有限,暂时还是没找到做出的方法,相信过一段时间后就会被我们做出。本次试验让我们对栈和队列有了进一步的加深认识和了解,对栈和队列的结构了解更加彻底和清晰。
正在阅读:
数据结构java实验三10-19
高速公路驻地监理部内部管理规章制度04-16
儿时的那扇门作文400字07-14
平面构成09-11
关于大学生消费情况调查问卷的目的和意义09-29
外研版高二英语说课稿105-13
浅谈红色廉政文化建设09-16
小升初常考英语作文04-05
学生校级奖学金申请书优质例文04-03
化工基础复习题06-27
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 数据结构
- 实验
- java
- “十三五”重点项目-石棉线生产建设项目申请报告
- 长江中下游江湖水交换规律研究
- “开放教育”汉语言文学(本科)专业 练习题答案 要点
- 数字地形测量学实习报告
- 妇产科名解、问答及分析题
- 大学物理(吴百诗)习题答案12波动
- 03-湖南某电厂2×600MW火电机组主厂房工程施工组织设计
- 商品编码练习题及答案
- 汽车构造下册全部复习题及答案
- XX专业教育实习教学大纲
- 《如何让孩子学会宽容》案例
- 2015年广西政法干警时政热点:7月14日国内外时政热点
- 《昆山市建筑物停车配建标准(2015)》 - 图文
- 计算机一级考试常见出错题
- 铣床安全操作规程
- 刑事诉讼法案例分析
- 甲醇化学品安全技术说明书
- 红筹上市的海外重组操作实务
- 新人教版一年级数学第八单元 20以内的进位加法
- 脱硫事故预想