数据结构之堆,栈的实现

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

实现的功能如上图。

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

capacity表示栈的容量。

首先是堆的初始化

再就是栈的插入和删除

然后实现显示栈顶元素

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

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

下面是队列的实现

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

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

初始化的实现

尾插的实现。

尾删的实现。

整个队列销毁的实现

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

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

相关推荐
漫随流水1 小时前
leetcode算法(151.反转字符串中的单词)
数据结构·算法·leetcode
ada7_1 小时前
LeetCode(python)78.子集
开发语言·数据结构·python·算法·leetcode·职场和发展
你怎么知道我是队长7 小时前
C语言---指针
c语言·数据结构·算法
萤虫之光7 小时前
有序数组中的单一元素(一)
数据结构·算法
optimistic_chen9 小时前
【Redis 系列】常用数据结构---SET类型
linux·数据结构·数据库·redis·set·数据类型·命令行
漫随流水9 小时前
leetcode算法(344.反转字符串)
数据结构·算法·leetcode
sin_hielo10 小时前
leetcode 1411(递推)
数据结构·算法·leetcode
一起养小猫11 小时前
LeetCode100天Day10-单词规律与同构字符串
java·开发语言·数据结构
漫随流水11 小时前
leetcode算法(20.有效的括号)
数据结构·算法·leetcode
tobias.b12 小时前
408真题解析-2009-1-数据结构-队列-进出规则-应用
数据结构·考研·408真题