



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
福州大学数计学院数据结构上机实验报告专业和班级:信息计算科学与应用数学6班学号姓名成绩实验名称栈与队列实验内容栈与队列基本操作实验目的和要求【实验目的】 1掌握栈、队列的思想及其存储实现。2掌握栈、队列的常见算法的程序实现。【实验内容】 1采用链式存储实现栈的初始化、入栈、出栈操作。 2采用顺序存储实现栈的初始化、入栈、出栈操作。 3采用链式存储实现队列的初始化、入队、出队操作。 4采用顺序存储实现循环队列的初始化、入队、出队操作。【实验要点及说明】1、以上实现算法1、4或算法2、3即可2、顺序栈中的数据元素存储在一个已分配的指定长度的一维数组中。与数组操作不同的是,元素的入栈操作只能在栈顶进行。3、循环队列的数据区是首尾相接的循环结构,要注意循环队列队满和队空的判断条件。问题描述和主要步骤#include#include#include#include#define OK 1#define ERROR 0#define OVERFLOW 0#define MAX 20typedef struct Stack/构造链栈char data;struct Stack *next;Stack,*Link;int Inits(Link &s)s=(Link)malloc(sizeof(Stack);if(!s)return(OVERFLOW);s-next=NULL;return OK;int Push(Link &s,char e)/入栈Link p;p=(Link)malloc(sizeof(Stack);if(!p)return ERROR;p-data=e;p-next=s-next;s-next=p;return OK;int Pop(Link &s,char &e)/出栈Link p;p=s-next;e=p-data;s-next=p-next;return OK;int creates(Link &s,int n)int i;char e;cout输入栈的数据:;for(i=0;ie;Push(s,e);return OK;int Tras(Link &s,int n)Link p;p=s-next;while(p)coutdata;p=p-next;return OK;typedef struct/构造队列char *base;int front;int rear;Que;int Initq(Que &q)q.base=(char *)malloc(MAX*sizeof(char);if(!q.base)return(OVERFLOW);q.front=0;q.rear=0;return OK;int Qlength(Que &q)/求队列长度return(q.rear-q.front+MAX)%MAX);int Enq(Que &q,char e)/入队if(q.rear+1)%MAX=q.front)return ERROR;q.baseq.rear=e;q.rear=(q.rear+1)%MAX;return OK;int Deq(Que &q,char &e)/出队if(q.front=q.rear)return ERROR;e=q.baseq.front;q.front=(q.front+1)%MAX;return OK;int createq(Que &q,int m)int i;char e;cout输入队列的数据:;for(i=0;ie;if(!Enq(q,e)cout队列已满。endl;break;return OK;int Traq(Que &q)int i,m;m=Qlength(q);for(i=0;im;i+)cout*(q.base+i);return OK;void main()int m,n,i,l;char e;Link s;Inits(s);Que q;Initq(q);cout1、栈的基本操作endl;coutn;creates(s,n);cout遍历栈:;Tras(s,n);coutendl输出栈顶元素:;Pop(s,e);couteendl;cout遍历栈:;Tras(s,n);coutnendl;cout2、队列的基本操作endl;coutm;createq(q,m);cout遍历队列:;Traq(q);coutendl队列的长度为:Qlength(q);coutendll;cout出队数据:endl;for(i=0;il;i+)cout第i+1个数据:;Deq(q,e);couteendl;cout遍历
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆大足县2025年上半年事业单位公开遴选试题含答案分析
- 浙江省金华县2025年上半年事业单位公开遴选试题含答案分析
- 浙江省常山县2025年上半年事业单位公开遴选试题含答案分析
- 河北省饶阳县2025年上半年公开招聘城市协管员试题含答案分析
- 2025版高品质混凝土构件采购合同规范范本
- 2025年服装辅料代理销售合同
- 2025年度绿色建筑节能材料全国分销合作协议
- 2025版汽车吊吊装设备租赁合同范本
- 2025年度家庭厨房橱柜升级改造工程合同范本
- 2025标准担保公司房产抵押借款合同
- 学校食堂从业人员食品安全知识培训考试试题(含答案)
- 2025年教科版新教材科学三年级上册全册教案设计(含教学计划)
- 医院药品采购与质量控制规范
- 支部纪检委员课件
- 从+“心”+出发遇见更好的自己-开学第一课暨心理健康教育主题班会-2025-2026学年高中主题班会
- 枣庄学院《图学基础与计算机绘图》2024-2025学年第一学期期末试卷
- 2025版仓储库房租赁合同范本(含合同生效条件)
- GB 46031-2025可燃粉尘工艺系统防爆技术规范
- 近十年中职试卷及答案
- 除颤仪的使用及护理
- 内科医生工作总结PPT课件
评论
0/150
提交评论