数据结构之栈和队列

栈的定义:

我们要记住这8个字,先进后出,后进先出

我们对于栈的操作只有两个,进栈和出栈

栈的顺序结构初始化:(和顺序表差不多)

代码实现:

栈的顺序结构进栈:

代码实现:

栈的顺序结构出栈:

代码实现:

这里解释一下,让下标减一,下次进行进栈的时候就直接覆盖了,和顺序表的原理差不多

获取栈顶元素:

代码实现:

最后看一下实现结果:

栈的内存分配进行初始化

栈的链式结构初始化:

代码实现:

栈的链式结构进栈:

代码实现:

栈的链式结构出栈:

代码实现:

栈的链式结构获取栈顶元素:

代码实现:

最后看一下实现结果

下面到了队列

队列的定义正好与栈相反

我们要记住这8个字,先进先出,后进后出

队列的顺序结构初始化:

代码实现:

队列的顺序结构判断队列是否为空:

代码实现:

队列的顺序结构判断队列的元素满没满:

代码实现:

队列的顺序结构入队:

代码实现:

队列的顺序结构出队:

代码实现:

队列的顺序结构获取尾数据:

代码实现:

最后看一下实现结果:

循环队列:

队列的循环结构初始化:

代码实现:

队列的循环结构入队:

代码实现:

队列的循环结构出队:

代码实现:

最后看一下实现结果:

循环队列这里有一个BUG,他永远满不了

因为real永远指向元素的下一个位置,当他指向0的时候,在判断满没满时,他的结果是满的 ,实际上没有满,我们看一下下面这张图片

队列链式结构初始化:

代码实现:

队列链式结构进队:

代码实现:

队列链式结构出队:

代码实现:

队列链式结构获取头元素:

代码实现:

最后看一下实现结果:

关于队列的基础知识点就先到这里吧,我们寒假在见

相关推荐
田梓燊1 小时前
code 560
数据结构·算法·哈希算法
会编程的土豆2 小时前
【数据结构与算法】动态规划
数据结构·c++·算法·leetcode·代理模式
迈巴赫车主3 小时前
蓝桥杯19724食堂
java·数据结构·算法·职场和发展·蓝桥杯
Kethy__3 小时前
计算机中级-数据库系统工程师-数据结构-查找算法
数据结构·算法·软考·查找算法·计算机中级
所以遗憾是什么呢?3 小时前
【题解】Codeforces Round 1081 (Div. 2)
数据结构·c++·算法·acm·icpc·ccpc·xcpc
OOJO4 小时前
c++---vector介绍
c语言·开发语言·数据结构·c++·算法·vim·visual studio
茉莉玫瑰花茶5 小时前
数据结构 - 并查集
数据结构
汀、人工智能5 小时前
05 - 函数基础
数据结构·算法·数据库架构·05 - 函数基础
计算机安禾6 小时前
【数据结构与算法】第28篇:平衡二叉树(AVL树)
开发语言·数据结构·数据库·线性代数·算法·矩阵·visual studio
汀、人工智能9 小时前
[特殊字符] 第103课:单词搜索II
数据结构·算法·均值算法·前缀树·trie·单词搜索ii