当前位置:   article > 正文

数据结构实验之堆栈、队列【图文并茂&内容丰富&代码全面】_堆栈实验

堆栈实验

一、实验目的

1.掌握堆栈和队列的抽象数据类型。
2.掌握实现堆栈和队列的操作的各种算法。
3. 理解堆栈与递归的关系、掌握环队的应用。

二、实验环境

1.硬件:自配计算机。
2.软件:Windows操作系统 + 编译器(Devc++/VC)等;

三、实验要求

(一)堆栈:
1.熟练掌握栈在顺序结构和链式结构的上的操作。
2.能够建栈、初始化、判空、求长度,调用函数实现操作。
3.实现栈的表达式求值
(二)环队:
1.描述循环队列在顺序结构和链式结构中的操作。
2.能够建队、初始化、判空满、求长度。
3.用环队实现生活中的一个应用实例。

四、实验内容

(一)堆栈:
1.堆栈在顺序结构和链式结构的上的基础操作(子函数调用)。
2.实现“数据栈”和“操作”栈。
3.栈的表达式求值。
(二)环队:
1.环队在顺序结构和链式结构的上的基础操作(子函数调用)。
2.设计一个日常生活中的环队应用实例。

五、实验原理(流程图)

在这里插入图片描述
在这里插入图片描述

六、代码如下(附图)

1.堆栈在顺序表中的实现
在这里插入图片描述
在这里插入图片描述
2.堆栈在链式存储结构中的实现
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.栈的表达式求值
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4.环队在顺序存储结构中的应用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.环队在链式存储结构中的应用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6.环队的实际应用(圆桌会议–约瑟夫环)
在这里插入图片描述

七、运行结果(通过)截图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

八、实验总结与体会

通过本次实验,我了解了线性表的特殊应用–堆栈(原理:LIFO),能够在顺序结构和链式结构中实现它的操作和应用(栈的表达式求值);此外,我掌握了另一种数据结构队列(原理:先进先出),为了更好地解决队满和队空的问题,我掌握了环队这一知识,并且能够运用它来解决生活中的简单实际问题。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/668349
推荐阅读
相关标签
  

闽ICP备14008679号