数据结构之堆,栈的实现

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

实现的功能如上图。

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

capacity表示栈的容量。

首先是堆的初始化

再就是栈的插入和删除

然后实现显示栈顶元素

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

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

下面是队列的实现

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

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

初始化的实现

尾插的实现。

尾删的实现。

整个队列销毁的实现

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

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

相关推荐
kaikaile199519 小时前
基于拥挤距离的多目标粒子群优化算法(MO-PSO-CD)详解
数据结构·算法
不忘不弃19 小时前
求两组数的平均值
数据结构·算法
leaves falling19 小时前
迭代实现 斐波那契数列
数据结构·算法
DonnyCoy19 小时前
Android性能之数据结构
数据结构
天赐学c语言19 小时前
1.7 - 删除排序链表中的重要元素II && 哈希冲突常用解决冲突方法
数据结构·c++·链表·哈希算法·leecode
菜鸟233号20 小时前
力扣96 不同的二叉搜索树 java实现
java·数据结构·算法·leetcode
空空潍21 小时前
hot100-最小覆盖字串(day12)
数据结构·算法·leetcode
yyy(十一月限定版)21 小时前
算法——二分
数据结构·算法
啊董dong1 天前
noi-2026年1月07号作业
数据结构·c++·算法·noi
星火开发设计1 天前
二叉树详解及C++实现
java·数据结构·c++·学习·二叉树·知识·期末考试