堆栈

堆栈(Stack)的简介

  • 堆栈(Stack)是一个有序列表,它只能在顶端执行插入和删除。
  • 堆栈(Stack)是一个递归数据结构,具有指向其顶部元素的指针。
  • 堆栈有时被称为后进先出(LIFO)列表,即首先插入堆栈的元素将最后从堆栈中删除。

堆栈的一些应用

  • 递归
  • 表达式评估和转换
  • 解析
  • 浏览器
  • 编辑器
  • 树遍历

1. 堆栈操作

可以在堆栈上执行各种操作。

1.推入 :将元素添加到堆栈中,如下图所示:

2.弹出 :从堆栈中删除元素,如下图所示:

3.窥视:查看堆栈的所有元素而不删除它们。

2. 堆栈如何增加?

场景1 :堆栈为空

如果堆栈中不包含任何元素,则称为空。 在此阶段,变量top的值为-1

场景2 :堆栈不为空

每当向堆栈添加任何元素时,top的值将增加1。 在下面的堆栈中,添加第一个元素后,top = 2

场景3:删除元素

每当从堆栈中删除元素时,top的值将减少1。在下面的堆栈中,从堆栈中删除元素10后,top = 1

顶部及其值:

顶部位置 堆栈状态
-1
0 堆栈中只有一个元素
N-1 堆栈已满
N 溢出

上一篇: 循环双向链表 下一篇: 数组实现堆栈