数据结构之堆,栈的实现

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

实现的功能如上图。

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

capacity表示栈的容量。

首先是堆的初始化

再就是栈的插入和删除

然后实现显示栈顶元素

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

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

下面是队列的实现

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

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

初始化的实现

尾插的实现。

尾删的实现。

整个队列销毁的实现

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

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

相关推荐
Sylvia-girl20 小时前
数据结构之复杂度
数据结构·算法
CQ_YM21 小时前
数据结构之队列
c语言·数据结构·算法·
VekiSon21 小时前
数据结构与算法——树和哈希表
数据结构·算法
xu_yule21 小时前
数据结构与算法(1)(第一章复杂度知识点)(大O渐进表示法)
数据结构
fish_xk1 天前
数据结构之排序
数据结构
Unstoppable221 天前
代码随想录算法训练营第 56 天 | 拓扑排序精讲、Dijkstra(朴素版)精讲
java·数据结构·算法·
potato_may1 天前
CC++ 内存管理 —— 程序的“五脏六腑”在哪里?
c语言·开发语言·数据结构·c++·内存·内存管理
ghie90901 天前
MATLAB自适应子空间辨识工具箱
数据结构·算法·matlab
松涛和鸣1 天前
25、数据结构:树与二叉树的概念、特性及递归实现
linux·开发语言·网络·数据结构·算法
獭.獭.1 天前
C++ -- 二叉搜索树
数据结构·c++·算法·二叉搜索树