单调栈,顾名思义,栈中的内容是单调的,我们可以利用这里特性解决一些有趣的问题,如: 水池问题: 给定一组高度,如[0,1,0,2,1,0,1,3,2,1,2,1],返回可以装的水量6 最大面积问题:给定一组高度如[2,1,5,6,2,3],返回最大矩形面积10 题目中要求所有值左边👈和右边👉最近的较小值,可以利用单调递增栈: 如果当前元素大于栈顶元素,将元素下标入栈 如果当前元素小于栈顶元素,一一出栈,直到栈顶下标对应元素大于当前元素,然后将当前元素的下标入栈 出栈的过程中,第一个栈顶即为当前元素左边的较小值,剩下的栈顶对应元素的右边较小值为当前元素 遍历完整个数组后,如果栈不为空...