1 / 5
文档名称:

栈和队列综合实验报告.doc

格式:doc   大小:2,401KB   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

栈和队列综合实验报告.doc

上传人:梅子 2022/8/2 文件大小:2.34 MB

下载得到文件列表

栈和队列综合实验报告.doc

相关文档

文档介绍

文档介绍:The Standardization Office was revised on the afternoon of December 13, 2020
栈和队列综合实验报告
The Standardization Office was revised on the afternoon of December 13, 2020
栈和队列综合实验报告
栈和队列综合实验报告
一、实验目的
(1)能够利用栈和队列的基本运算进行相关操作。
(2)进一步熟悉文件的应用
(3)加深队列和栈的数据结构理解,逐步培养解决实际问题的编程能力。
二、实验环境
装有Visual C++。
本次实验共计4学时。
三、实验内容
以下两个实验任选一个。
迷宫求解
设计一个迷宫求解程序,要求如下:
以M × N表示长方阵表示迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。
能任意设定的迷宫
(选作)如果有通路,列出所有通路
提示:
以一个二维数组来表示迷宫,0和1分别表示迷宫中的通路和障碍,如下图迷宫数据为:
1111111111
1001000101
1001000101
1000011001
1011100001
1000100001
1010001001
1011101101
1100000001
1111111111
入口位置:1 1
出口位置:8 8
四、重要数据结构
typedef struct{
int j[100];
int top;栈顶指针,一直指向栈顶
}stack;//存放路径的栈
int s[4][2]={{0,0},{0,0},{0,0},{0,0}};
//用于存放最近的四步路径坐标的数组,是即使改变的,即走一步,便将之前的坐标向前移一步,将最早的一步坐标覆盖掉,新的一步放入数组末尾其实功能和队列一样。
其作用是用来判断是否产生了由于本程序算法产生的“田”字方格内的死循环而准备的,用于帮助跳出循环。
五、实现思路分析
if(a[m][n+1]==0&&k!=3){
n++;
k=1;
o=0;
}else if(a[m+1][n]==0&&k!=4){
m++;
k=2;
o=0;
}else if(a[m][n-1]==0&&k!=1){
n--;
k=3;
o=0;
}else if(a[m-1][n]==0&&k!=2){
m--;
k=4;
o=0;
}e