LeetCode 503. 下一个更大元素 II
题目描述
思路分析
思路描述
参考代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
func nextGreaterElements(nums []int) []int {
var stack []int
n := len(nums)
res := make([]int, n)
for i := 0; i < n; i++ {
res[i] = -1
}
for i := 0; i < 2*n; i++ {
for len(stack) > 0 && nums[stack[len(stack)-1]] < nums[i%n] {
index := stack[len(stack)-1]
res[index] = nums[i%n]
stack = stack[:len(stack)-1]
}
stack = append(stack, i%n)
}
return res
}
1
write your code here
CC BY-NC-SA 4.0
许可协议,转载请注明出处!
本博客所有文章除特别声明外,均采用