栈和队列的基本操作

栈和队列的基本操作

ID:8843505

大小:49.00 KB

页数:6页

时间:2018-04-09

栈和队列的基本操作_第1页
栈和队列的基本操作_第2页
栈和队列的基本操作_第3页
栈和队列的基本操作_第4页
栈和队列的基本操作_第5页
资源描述:

《栈和队列的基本操作》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、洛阳理工学院实验报告系别计算机系班级学号姓名课程名称数据结构实验日期2014.3.28实验名称栈和队列的基本操作成绩实验目的:熟悉掌握栈和队列的特点,掌握与应用栈和队列的基本操作算法,训练和提高结构化程序设计能力及程序调试能力。实验条件:计算机一台,VisualC++6.0实验内容:1.问题描述2.数据结构类型定义利用栈和队列判断字符串是否为回文。称正读与反读都相同的字符序列为“回文”序列。要求利用栈和队列的基本算法实现判断一个字符串是否为回文。栈和队列的存储结构不限。//定义栈typedefstruct{charelem[MAX];int

2、top;}SeqStack;//定义循环队列typedefstruct{charelement[MAX];intfront;intrear;}SeqQuene;3.模块划分(1)初始化栈:voidInitStack(SeqStack*S)(2)入栈:intPush(SeqStack*S,charx,intcnt)(1)出栈:intPop(SeqStack*S,char*x)(2)初始化队列:voidInitQuene(SeqQuene*Q)(3)入队:intEnterQuene(SeqQuene*Q,charx,intcnt)(4)出队:i

3、ntDeleteQuene(SeqQuene*Q,char*x,intcnt)(5)主函数:voidmain()1.详细设计#include#include#defineMAX50#defineFALSE0#defineTURE1//定义栈typedefstruct{charelem[MAX];inttop;}SeqStack;//定义循环队列typedefstruct{charelement[MAX];intfront;intrear;}SeqQuene;//初始化栈voidInitStack(Seq

4、Stack*S){S->top=-1;//构造一个空栈}//入栈intPush(SeqStack*S,charx,intcnt){if(S->top==cnt-1)return(FALSE);S->top++;S->elem[S->top]=x;return(TURE);}//出栈intPop(SeqStack*S,char*x){if(S->top==-1)return(FALSE);else{*x=S->elem[S->top];S->top--;return(TURE);}}//初始化队列voidInitQuene(SeqQuene*

5、Q){Q->front=Q->rear=0;}//入队intEnterQuene(SeqQuene*Q,charx,intcnt){if((Q->rear+1)%(cnt+1)==Q->front)return(FALSE);Q->element[Q->rear]=x;Q->rear=(Q->rear+1)%(cnt+1);return(TURE);}//出队intDeleteQuene(SeqQuene*Q,char*x,intcnt){if(Q->front==Q->rear)return(FALSE);*x=Q->element[Q-

6、>front];Q->front=(Q->front+1)%(cnt+1);return(TURE);}//主函数voidmain(){inti,cnt,flag;SeqStacks;SeqQueneq;chara[MAX],b[MAX],c[MAX];flag=0;printf("请输入由@结束且小于%d的回文序列:",MAX);for(i=0;i

7、);InitQuene(&q);for(i=0;i

8、

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。