0x00
单调栈主要回答这样的几种问题
- 比当前元素更大的下一个元素
- 比当前元素更大的前一个元素
- 比当前元素更小的下一个元素
- 比当前元素更小的前一个元素
0x01 问题一
维护一个单调递减的栈。
Leetcode 496:下一个更大元素 I(超详细的解法!!!)
Leetcode 503:下一个更大元素 II(超详细的解法!!!)
class Solution:
def nextGreaterElement(self, nums):
"""
:type nums1: List[int]
:type nums2: List[int]
:rtype: List[int]
"""
stack = list()
res = [-1]*len(nums)
for i, n in enumerate(nums):
while stack and num