您的位置:首页 > 简历大全

数据结构实验报告_数据结构实验报告栈和队列

发布时间:2024-08-02 06:35:39  来源:互联网     背景:

想必学计算机专业的同学都知道数据结构是一门比较重要的课程,那么,下面是CN人才公文网小编给大家整理收集的,供大家阅读参考。

数据结构实验报告1

一、实验目的及要求

1」掌握栈和队列这两种特殊的线性表,熟悉它们的特性,在实际问题背景下灵活运用它们。

本实验训练的要点是栈”和队列”的观点;

二、实验内容

1」 利用栈,实现数制转换。

2」 利用栈,实现任一个表达式中的语法检查「选做」。

3」 编程实现队列在两种存储结构中的基本操作「队列的初始化、判队列空、入队列、出队列」;

三、实验流程、操作步骤或核心代码、算法片段

顺序栈:

Status InitStack「SqStack &S」

{

S.base=「ElemType*」malloc「STACK_INIT_SIZE*sizeof「ElemType」」;

if「!S.base」

return ERROR;

S.top=S.base;

S.stacksize=STACK_INIT_SIZE;

return OK;

}

Status DestoryStack「SqStack &S」

{

free「S.base」;

return OK;

}

Status ClearStack「SqStack &S」

{

S.top=S.base;

return OK;

}

Status StackEmpty「SqStack S」

{

if「S.base==S.top」

return OK;

return ERROR;

}

int StackLength「SqStack S」

{

return S.top-S.base;

}

Status GetTop「SqStack S,ElemType &e」

{

if「S.top-S.base>=S.stacksize」

{

S.base=「ElemType *」realloc「S.base,「S.stacksize+STACKINCREMENT」*sizeof「ElemType」」;

if「!S.base」 return ERROR;

S.top=S.base+S.stacksize;

S.stacksize+=STACKINCREMENT;

}

*S.top++=e;

return OK;

}

Status Push「SqStack &S,ElemType e」

{

if「S.top-S.base>=S.stacksize」

{

S.base=「ElemType *」realloc「S.base,「S.stacksize+STACKINCREMENT」*sizeof「ElemType」」;

if「!S.base」

return ERROR;

S.top=S.base+S.stacksize;

S.stacksize+=STACKINCREMENT;

}

*S.top++=e;

return OK;

}

Status Pop「SqStack &S,ElemType &e」

{

if「S.top==S.base」

return ERROR;

e=*--S.top;

return OK;

}

Status StackTraverse「SqStack S」

{

ElemType *p;

p=「ElemType *」malloc「sizeof「ElemType」」;

if「!p」 return ERROR;

p=S.top;

while「p!=S.base」//S.top上面一个...

{

p--;

printf「"%d ",*p」;

}

return OK;

}

Status Compare「SqStack &S」

{

int flag,TURE=OK,FALSE=ERROR;

ElemType e,x;

InitStack「S」;

flag=OK;

printf「"请输入要进栈或出栈的元素:"」;

while「「x= getchar「」」!='#'&&flag」

{

switch 「x」

{

case '「':

case '[':

case '{':

if「Push「S,x」==OK」

printf「"括号匹配成功!\n\n"」;

break;

case '」':

if「Pop「S,e」==ERROR || e!='「'」

{

printf「"没有满足条件\n"」;

flag=FALSE;

}

break;

case ']':

if 「 Pop「S,e」==ERROR || e!='['」

flag=FALSE;

break;

case '}':

if 「 Pop「S,e」==ERROR || e!='{'」

flag=FALSE;

break;

}

}

if 「flag && x=='#' && StackEmpty「S」」

return OK;

else

return ERROR;

}

链队列:

Status InitQueue「LinkQueue &Q」

{

Q.front =Q.rear=

「QueuePtr」malloc「sizeof「QNode」」;

if 「!Q.front」 return ERROR;

Q.front->next = NULL;

return OK;

}

Status DestoryQueue「LinkQueue &Q」

{

while「Q.front」

{

Q.rear=Q.front->next;

free「Q.front」;

Q.front=Q.rear;

}

return OK;

}

Status QueueEmpty「LinkQueue &Q」

{

if「Q.front->next==NULL」

return OK;

return ERROR;

}

Status QueueLength「LinkQueue Q」

{

int i=0;

班主任个人工作总结简短精辟

QueuePtr p,q;

p=Q.front;

while「p->next」

{

i++;

p=Q.front;

q=p->next;

p=q;

}

return i;

}

Status GetHead「LinkQueue Q,ElemType &e」

{

QueuePtr p;

p=Q.front->next;

if「!p」

return ERROR;

e=p->data;

return e;

}

Status ClearQueue「LinkQueue &Q」

{

QueuePtr p;

while「Q.front->next 」

{

p=Q.front->next;

free「Q.front」;

Q.front=p;

}

Q.front->next=NULL;

Q.rear->next=NULL;

return OK;

}

Status EnQueue「LinkQueue &Q,ElemType e」

公司开会通知怎么写范文

{

网红辞职报告

数据结构实验报告时间复杂度

QueuePtr p;

p=「QueuePtr」malloc「sizeof 「QNode」」;

if「!p」

return ERROR;

p->data=e;

p->next=NULL;

Q.rear->next = p;

Q.rear=p; //p->next 为空

return OK;

}

Status DeQueue「LinkQueue &Q,ElemType &e」


返回网站首页

本文评论
老人去世悼词(老人去世悼词)
有关(精选11篇)为了对逝者表示纪念,时常需要准备一份悼词,悼词是指向死者表示哀悼的悼念性文章。悼词的格式和要求是什么样的呢?下面是小编整理的有关,仅供参考,大家一起来看看吧。...
日期:07-30
校企合作实施方案_产教融合校企合作
校企合作实施方案范本校企合作,顾名思义,是学校与企业建立的一种合作模式。今天,小编为您带来的是校企合作实施方案范本,感谢您的阅读!校企合作是高职院校培养高素质技能型人才...
日期:08-10
计算机维护实习报告_计算机维护实习日志100篇
5篇阅读伴我成长作文600字左右在当下社会,越来越多的事务都会使用到报告,报告具有成文事后性的特点。相信很多朋友都对写报告感到非常苦恼吧,下面是小编帮大家整理的5篇,仅供参...
日期:10-02
数据结构实验报告_数据结构实验报告栈和队列
想必学计算机专业的同学都知道数据结构是一门比较重要的课程,那么,下面是CN人才公文网小编给大家整理收集的,供大家阅读参考。数据结构实验报告1一、实验目的及要求1」掌握栈和...
日期:08-02
我的自我介绍篇_我的自我介绍
「合集15篇」当到达一个陌生的环境后,进行自我介绍是必不可少的,通过自我介绍可以让他人了解我们。那么我们该怎么去写自我介绍呢?以下是小编精心整理的,供大家参考借鉴,希望可以...
日期:07-29
经典伤心的签名70条_伤感的签名30字
2021年经典伤心的签名合集70条我一直在下一秒你就会离开的心态里,全力以赴的想念你,眼睛望向你就像呼吸一样自然。以下是小编收集整理的伤心的签名70条,欢迎大家借鉴与参考,希...
日期:03-04
大学生自荐信求职_大学生自荐信求职
在当今不断发展的世界,自荐信的使用频率越来越高,我们常常通过写自荐信来达到自我推销的目的。你还在为写自荐信而苦恼吗?下面是小编整理的,仅供参考,希望能够帮助到大家。1尊敬...
日期:05-05
财务总经理的职责是什么_财务总经理岗位职责
在生活中,岗位职责对人们来说越来越重要,岗位职责是组织考核的依据。岗位职责到底怎么制定才合适呢?下面是小编为大家整理的,仅供参考,欢迎大家阅读。1一、 坚持原则,廉洁奉公;具...
日期:04-13
基层医生述职述廉报告最新模板_基层医生个人工作的述职报告
(精选6篇)时光在流逝,从不停歇;万物在更新,而我们在成长,回想起这段时间的工作,一定取得了很多的成绩,来为这一年的工作写一份述职报告吧。好的述职报告都具备一些什么特点呢?下面是...
日期:05-24
个人师德师风自我评价_个人师德师风自我评价
个人师德师风的自我评价在现实生活或工作学习中,我们最不陌生的就是自我评价了,自我评价直接影响学习和参与社会活动的积极性,也影响着与他人的交往关系。你写自我评价时总是无...
日期:06-14
我渴望什么作文_渴望与追求作文
导语:在平时的学习、工作或生活中,许多人都有过写作文的经历,对作文都不陌生吧,作文是从内部言语向外部言语的过渡,即从经过压缩的简要的、自己能明白的语言,向开展的、具有规范语...
日期:03-28
工作简历示范_简历该怎么写
工作简历示范目前所在:白云区年龄:23户口所在:广州国籍:中国婚姻状况:未婚民族:汉族培训认证:未参加身高:165cm诚信徽章:未申请体重:50kg人才测评:未测评我的特长:求职意向人才类型:应届...
日期:07-29
暴雨应急预案最新_暴雨应急预案
最新(精选6篇)在平凡的学习、工作、生活中,难免会突发一些事故,为了避免事情往更坏的方向发展,可能需要提前进行应急预案编制工作。那么什么样的应急预案才是好的呢?以下是小编精...
日期:09-02
护士实习周记(护士实习周记500字)
推荐3篇引导语:时间是箭,去来迅疾,转眼一周又结束了,我们或多或少都学到了一些新东西,不如趁现在好好写一篇周记。那么我们该怎么去写周记呢?以下是小编帮大家整理的推荐,欢迎阅读...
日期:08-24
大二学习计划(大二学习计划视频)
关于集锦9篇时间流逝得如此之快,我们又将迎来新的喜悦、新的收获,此时此刻需要为接下来的工作做一个详细的计划了。拟起计划来就毫无头绪?下面是小编为大家收集的9篇,仅供参考,希...
日期:07-31
机械电子工程个人简历_机械电子工程个人简历
(精选11篇)时间的脚步是无声的,它在不经意间流逝,我们很快就要开启找工作的生活,现在这个时候,写好一份简历就十分有必要了!简历怎样写才能让人满意呢?下面是小编为大家收集的,希望对...
日期:07-29
专业情侣个性签名(情侣个性签名英语)
专业情侣个性签名感情,是用来维持的,不是用来考验的。爱人,是用来疼爱的,不是用来伤害的。一段情走着走着就散了 有些人叫我如何取舍一颗心跳着跳着就停了 有些人叫我如何忘记我...
日期:03-04
置业顾问应聘简历表格下载(置业顾问简历怎么写有亮点)
置业顾问应聘简历表格下载想要个人简历能够发挥自身的作用价值,意思就是让个人简历能够顺利的通过企业公司的考核,然后获得面试的机会。而要顺利的通过个人简历筛选,手首先就要...
日期:08-09
描写考试过程的片段_描写考试的片段摘抄
(精选110句)考试是学生在某个阶段对自己学习能力的一次检验,考试对于在校生来说是非常重要的。考试教会了我们进行反思,备考 祝福语可以让我们更加乐观和积极地面对人生和未来。...
日期:10-31
克服害羞有妙方心理健康教案_心理健康教育活动课设计教案
(通用20篇)作为一无名无私奉献的教育工作者,编写教案是必不可少的,教案是教学蓝图,可以有效提高教学效率。教案应该怎么写才好呢?以下是小编为大家收集的,仅供参考,欢迎大家阅读。...
日期:08-06