栈
栈是一种后进先出的数据结构
s.push压栈,s.pop弹出栈顶,s.top获取栈顶元素
栈实现
函数调用栈
递归与栈
递归函数的实现是基于函数栈实现的
递归可以使用栈来实现,通过栈保存当前环境
单调栈
计算器的栈实现
$+ - * / ( ) $ 运算符的优先级不同,可以使用优先级非降低单调栈来实现
如果当前运算符优先级高于或者等于栈顶运算符,则压栈;
否则,将栈顶运算符弹出栈,一直到当前运算符优先级高于或者等于栈顶运算符;
接雨水
递减单调栈
trap.cpp
柱状图中的最大矩形
非递减单调栈