📜  数据结构-堆栈

📅  最后修改于: 2020-10-15 00:48:53             🧑  作者: Mango

堆栈

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

堆栈的应用

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

堆栈操作

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

1.推送:将元素添加到堆栈中

2. Pop:从堆栈中删除一个元素

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

堆栈如何增长?

场景1:堆栈为空

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

方案2:堆栈不为空

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

方案3:删除元素

每当从堆栈中删除一个元素时,top的值将减少1。

在以下堆栈中,从堆栈中删除10后,top = 1。

顶部及其值:

Top position Status of stack
-1 Empty
0 Only one element in the stack
N-1 Stack is full
N Overflow