栈和队列的基本概念和应用

全书链接: 408笔记——数据结构(C语言版)(将书上例题用C语言列出来,可以直接在IDE(Xcode)上运行)

文章目录

  • 2.1 栈
    • 2.1.1 栈的基本概念
    • 2.1.2 栈的应用举例
  • 2.2 队列
    • 2.2.1 队列的基本概念

2.1 栈

2.1.1 栈的基本概念

栈:是限制在表的一端进行插入和删除操作的线性表。又称为后进先出线性表

用bottom表示栈底指针,top指向栈顶的下一个存储位置

用top - bottom = stacksize - 1表示栈满
栈和队列的基本概念和应用_第1张图片

2.1.2 栈的应用举例

1.数制转换
2.括号匹配的检验
3.表达式求值 中缀 后缀

2.2 队列

2.2.1 队列的基本概念

队列:也是运算受限的线性表。是一种先进先出的线性表。只允许在表的一端进行插入,而在另一端进行删除。

队首:允许进行删除的一端称为队首
队尾:允许进行插入的一端称为队尾

栈和队列的基本概念和应用_第2张图片
假溢出

循环队列
栈和队列的基本概念和应用_第3张图片
. rear所指的单元始终为空
. 循环队列为空:front = rear
. 循环队列满:(rear + 1)%MAX_QUEUE_SIZE = font

你可能感兴趣的:(计算机基础)