您所在位置: 网站首页 / 数据结构实验2.docx / 文档详情
数据结构实验2.docx 立即下载
2025-08-27
约2.3万字
约40页
0
29KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

数据结构实验2.docx

数据结构实验2.docx

预览

免费试读已结束,剩余 35 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

数据结构实验2

第一篇:数据结构实验21.实验题目:编写一个程序alog-1.cpp,实现顺序栈(假设栈中的元素类型为char)的各种基本运算,并在此基础上设计一个程序exp3-1.cpp,完成如下功能:(1)初始化栈s;(2)判断栈s是否非空;(3)依次进栈元素a,b,c,d,e;(4)判断栈s是否非空;(5)输出栈长度;(6)输出从栈顶到栈底元素;(7)输出出栈序列;(8)判断栈s是否非空;(9)释放栈;2.源代码:#include#include#defineMaxSize100typedefcharElemType;typedefstruct{ElemTypedata[MaxSize];inttop;//栈顶指针}SqStack;//定义顺序栈类型voidInitStack(SqStack*&s)//初始化栈{s=(SqStack*)malloc(sizeof(SqStack));s->top=-1;}voidDestoryStack(SqStack*&s)//销毁栈{free(s);}intStackLength(SqStack*&s)//求栈长度{inti=0;SqStack*s1;s1=(SqStack*)malloc(sizeof(SqStack));s1->top=s->top;while(s->top!=-1){s->top--;i++;}s->top=s1->top;returni;}intStackEmpty(SqStack*s)//判断栈是否为空{return(s->top==-1);}boolPush(SqStack*&s,ElemTypee)//进栈{if(s->top==MaxSize-1)//栈满的情况,即栈上溢出returnfalse;s->top++;//栈顶指针增1s->data[s->top]=e;//元素e放在栈顶指针处returntrue;}intPop(SqStack*&s,ElemType&e)//出栈{if(s->top==-1)returnfalse;//栈为空的情况,即栈下溢出e=s->data[s->top];//取栈顶元素s->top--;returntrue;}voidDispStack(SqStack*&s)//打印栈{inti;for(i=s->top;i>=0;i--)printf(“%c”,s->data[i]);printf(“n”);}voidmain(){ElemTypee;}SqStack*s;printf(“(1)初始化栈sn”);InitStack(s);printf(“(2)栈为%sn”,(StackEmpty(s)?“空”:“非空”));printf(“(3)依次进栈元素a,b,c,d,en”);Push(s,'a');Push(s,'b');Push(s,'c');Push(s,'d');Push(s,'e');printf(“(4)栈为%sn”,(StackEmpty(s)?“空”:“非空”));printf(“(5)栈长度:%dn”,StackLength(s));printf(“(6)从栈顶到栈底元素:”);DispStack(s);printf(“(7)出栈序列:”);while(!StackEmpty(s)){Pop(s,e);printf(“%c”,e);}printf(“n”);printf(“(8)栈为%sn”,(StackEmpty(s)?“空”:“非空”));printf(“(9)释放栈n”);DestoryStack(s);3.程序运行结果:4.心得体会及建议这次实验虽然程序很长,但有了第一次的经验,而且初始化栈,销毁栈等算法课本上都有,所以借鉴了一下,在求栈长度,打印栈上花费的时间比较多,这两个算法课本上没有,编写了好多次才成功,期间跟同学也进行了很多讨论,很感谢同学帮我找出我编写的代码中的很多错误,同时也学会了几个调试程序找出错误的方法,比如设置断点,还有将不行运行的部分加注释符使其不被运行,感觉我的编程能力有了很大提高。一开始编一个程序感觉很难,但当自己把每一步都分析出来,再将它用代码表示出来后也不再感觉有多么多么难了,自己首先要进行分析,然后逐步化解。不过感觉自己指针这块儿还是很吃力,很多地方都是因为指针用错卡到那里,因此我还是要继续学习,多多实践,在看一些例子的时候多分析一下。第二篇:《数据结构》实验指导书《数据结构》实验(训)指导书电气与信息工程学院实验中心前言《数据结构》是计算机相关专业的一门核心基础课程,也是很多高校研究生入学考试专业课必考课程之一。它主要介绍线性结构、树型结构、图形结构三种逻辑结构元素的存储实现,在此基础上介绍一些典型算法及时、空效率分析。这门课程的主要任务是培养学生的算法分析、设计
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

数据结构实验2

文档大小:29KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用