张芷铭的个人博客

栈是后进先出(LIFO)的线性数据结构,支持 push、pop 操作,广泛应用于函数调用、表达式求值等场景。

定义

栈遵循后进先出(LIFO, Last In First Out)原则,核心操作包括:

  • push:栈顶添加元素
  • pop:移除栈顶元素
  • peek/top:查看栈顶元素

应用场景

场景说明
函数调用栈管理函数返回地址和参数
括号匹配编译器检查括号配对
后缀表达式求值逆波兰表达式计算
历史记录浏览器前进/后退功能

相关算法

  • [[找出全部合法的出栈序列]]
  • [[判断序列的出栈合法性]]
  • 深度优先搜索(DFS):图和树的遍历
  • 迷宫求解:存储路径寻找路线
  • 回溯算法:存储状态用于回退

Comments