单调栈

 单调栈: 单调栈解决的是:以某个值为最小(最大)值的最大区间。 实现方法: 求最小值(最大值)的最大区间,维护一个递减(递增)的栈。(下面以求最小值最大区间为例) 当遇到一个比栈顶小的值的时候开始弹栈,弹栈停止的位置到这个值的区间即为此值左边的最大区间;同时,当一个值被弹掉的时候也就意味着比它更小的值来了,也可以计算被弹掉的值的右边的最大区间。 单调递增:数据出栈的序列为单调递增序列(即从栈顶到
相关文章
相关标签/搜索