何谓单调栈?leetcode单调栈题目汇总

一、单调栈

       我们知道,栈是一种基本的数据结构,其最大的特点就是“先进后出”,因为栈中的元素只能在一端进行操作,所有的元素只能在栈顶进出。
 

何谓单调栈?leetcode单调栈题目汇总

       普通的栈对于栈内的元素值没有任何要求。而单调栈不同,它要求栈内的元素具有单调性。
       单增栈:栈内的元素从栈底到栈顶满足单调递增。
       单减栈:栈内的元素从栈底到栈顶满足单调递减。
       那么,单调栈有啥用呢?简单来说,单调栈在查找比当前元素更大(小)的下(前)一个元素上有奇效。
 

二、Leetcode单调栈题目详解

leetcode 496.下一个更大元素(单调栈解法)

leetcode739. 每日温度(单调栈详解)

leetcode503. 下一个更大元素Ⅱ(单调栈解法详解)

leetcode 901. 股票价格跨度(单调栈解法详解)