数据结构之堆,栈的实现

首先我们分析由于只需要尾进尾出,用数组模拟更简单。

实现的功能如上图。

top可以表示栈中元素个数。

capacity表示栈的容量。

首先是堆的初始化

再就是栈的插入和删除

然后实现显示栈顶元素

大小和检测是否为空的实现

销毁栈的实现(防止内存泄露)

下面是队列的实现

由于需要头出尾入,所有用链表实现更好。

为了避免每一次调用的时候还要输入头,尾指针,直接进行打包成结构体。

初始化的实现

尾插的实现。

尾删的实现。

整个队列销毁的实现

然后我们就要实现队列的头显和尾显已经判断是否为空的实现。

最后就是判断队列大小的实现。

相关推荐
加油201913 分钟前
嵌入式软件技术栈和学习路线详解
linux·arm开发·数据结构·mqtt·设计模式·嵌入式
是main不是漫31 分钟前
【数据结构--双向链表】从前有个节点,它想要两头讨好…
c语言·数据结构·链表
南境十里·墨染春水34 分钟前
数据结构——AVL二叉平衡树
数据结构
过期动态39 分钟前
【RabbitMQ高级篇】生产者可靠性、MQ可靠性、消费者可靠性以及延迟队列的实现
java·数据结构·分布式·算法·rabbitmq·ruby
『昊纸』℃2 小时前
《C语言电子新-2026最新版》-编程语言与程序
数据结构·算法·程序设计·编程语言·软件开发
王璐WL9 小时前
【C语言入门级教学】函数的概念2
c语言·数据结构·算法
不知名的老吴15 小时前
双栈秒杀表达式的生成方式
数据结构
故事和你9115 小时前
洛谷-【动态规划1】动态规划的引入2
开发语言·数据结构·c++·算法·动态规划·图论
信奥胡老师17 小时前
B3968 [GESP202403 五级] 成绩排序
数据结构·算法
z2005093019 小时前
今日算法(回溯算法)
数据结构·算法