当前位置:网站首页>LeetCode 503. 下一个更大元素 II
LeetCode 503. 下一个更大元素 II
2022-07-05 09:16:00 【Sasakihaise_】
【单调栈】把最后一个元素之前的那些元素先入栈,形成环,再按照单调栈的方法遍历即可:
即对于每个元素i,把栈中比他小的元素全部出栈,此时如果栈顶还有,那么栈顶就是第一个比他大的,如果为空说明没有。最后不要忘了把元素i入栈。
class Solution {
// 单调栈 3:15 3:24
public int[] nextGreaterElements(int[] nums) {
Deque<Integer> stack = new LinkedList();
int i, j, n = nums.length;
for (i = n - 2; i >= 0; i--) {
while (!stack.isEmpty() && stack.peek() <= nums[i]) {
stack.pop();
}
stack.push(nums[i]);
}
int[] ans = new int[n];
for (i = n - 1; i >= 0; i--) {
while (!stack.isEmpty() && stack.peek() <= nums[i]) {
stack.pop();
}
if (stack.isEmpty()) {
ans[i] = -1;
} else {
ans[i] = stack.peek();
}
stack.push(nums[i]);
}
return ans;
}
}
边栏推荐
- 【阅读笔记】图对比学习 GNN+CL
- C form click event did not respond
- OpenGL - Model Loading
- Kotlin introductory notes (IV) circular statements (simple explanation of while, for)
- Introduction Guide to stereo vision (1): coordinate system and camera parameters
- notepad++
- 顶会论文看图对比学习(GNN+CL)研究趋势
- 2311. Longest binary subsequence less than or equal to K
- Talking about label smoothing technology
- 22-07-04 西安 尚好房-项目经验总结(01)
猜你喜欢
Wxml template syntax
C语言-从键盘输入数组二维数组a,将a中3×5矩阵中第3列的元素左移到第0列,第3列以后的每列元素行依次左移,原来左边的各列依次绕到右边
Attention is all you need
Nodejs modularization
Huber Loss
信息与熵,你想知道的都在这里了
Understanding rotation matrix R from the perspective of base transformation
Huber Loss
Add discount recharge and discount shadow ticket plug-ins to the resource realization applet
Introduction Guide to stereo vision (4): DLT direct linear transformation of camera calibration [recommended collection]
随机推荐
Introduction Guide to stereo vision (5): dual camera calibration [no more collection, I charge ~]
Editor use of VI and VIM
My life
Hosting environment API
[code practice] [stereo matching series] Classic ad census: (4) cross domain cost aggregation
Kotlin introductory notes (V) classes and objects, inheritance, constructors
高性能Spark_transformation性能
The location search property gets the login user name
Explain NN in pytorch in simple terms CrossEntropyLoss
Rebuild my 3D world [open source] [serialization-1]
Blogger article navigation (classified, real-time update, permanent top)
Summary of "reversal" problem in challenge Programming Competition
OpenGL - Coordinate Systems
Svg optimization by svgo
阿里十年测试带你走进APP测试的世界
Understanding rotation matrix R from the perspective of base transformation
scipy. misc. imread()
阿里云发送短信验证码
迁移学习和域自适应
【PyTorch Bug】RuntimeError: Boolean value of Tensor with more than one value is ambiguous