- 栈
- 特点:先进后出(LIFO),仅允许在栈顶进行插入(压栈)和删除(弹栈)操作,没有随机访问的能力,即只能访问或操作栈顶的元素。
- 单调栈
- 单调栈的基本思想和操作:
- 如果栈为空,将当前元素入栈。
- 如果当前元素小于等于栈顶元素(保持单调递增),将当前元素入栈。
- 如果当前元素大于栈顶元素(打破单调递增),则持续出栈栈顶元素,直到栈为空或当前元素小于等于栈顶元素。出栈的元素表示找到了其特定性质,可以在此处进行相应的处理。
- 将当前元素入栈,保持单调性。 栈基本操作的实现如下:
- 单调栈的基本思想和操作:
- 单调栈
- 特点:先进后出(LIFO),仅允许在栈顶进行插入(压栈)和删除(弹栈)操作,没有随机访问的能力,即只能访问或操作栈顶的元素。
一个简单的栈例题: