数据结构之堆,栈的实现

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

实现的功能如上图。

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

capacity表示栈的容量。

首先是堆的初始化

再就是栈的插入和删除

然后实现显示栈顶元素

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

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

下面是队列的实现

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

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

初始化的实现

尾插的实现。

尾删的实现。

整个队列销毁的实现

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

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

相关推荐
垆边人似月.几秒前
华为题:盛最多水的容器
数据结构·算法
HPtiger11 分钟前
数据结构——插入排序
数据结构·排序算法
All for pursuit.20 分钟前
【动态规划-11】279.完全平方数
数据结构·c++·算法·leetcode·动态规划
Logic1011 小时前
C语言/数据结构位运算题解:异或XOR找出套碗游戏中的“幸运碗“——只出现一次的数字
c语言·数据结构·算法·数组·位运算·时间复杂度·空间复杂度
y1su2 小时前
Leetcode 单调栈模板
java·开发语言·数据结构·算法·leetcode
一只旭宝2 小时前
树的家族全景:从二叉树到 B+ 树
数据结构
垆边人似月.2 小时前
华为题:每日温度
数据结构·c++·算法
Peregrine93 小时前
数据结构 - > 树和二叉树
数据结构·算法
j7~3 小时前
【算法】专题四.前缀和:一维二维模板,配套 LeetCode 真题,结合同余定理、哈希前缀和,搞定子数组与子矩阵区间求和问题。
数据结构·c++·算法·前缀和·优选算法
启观川3 小时前
数据结构与算法 -第 3 章 常用算法-回溯算法
数据结构·笔记·python·算法