跳转至

一、概念

  1. 一种“先进后出(LIFO)”的数据结构
  2. 只能访问栈顶元素,不支持随机访问(尽管使用数组实现)

二、操作

  1. push:入栈/压栈
  2. pop:出栈/弹栈
  3. empty:栈是否为空
  4. size:栈的大小

三、两种表示方式

  1. 顺序栈:申请连续单元(类似数组)
  2. 链式栈:需要时申请(使用头结点作为栈顶,时间复杂度最小化)

四、应用

  1. 逆序输出
  2. 括号匹配
  3. 迷宫寻路
  4. 进制转换
  5. 表达式计算
  6. [[递归]]

五、实现

顺序栈 链栈