当前位置:网站首页>LeetCode 496. 下一个更大元素 I
LeetCode 496. 下一个更大元素 I
2022-07-05 09:16:00 【Sasakihaise_】
【单调栈】从后往前遍历,对于元素i,不断弹出比i小的元素,如果栈不为空,那么栈顶就是第一个比i大的元素,然后把i押入栈。
class Solution {
// 单调栈找右侧第一个大于他的元素
// 1:55 2:14
public int[] nextGreaterElement(int[] nums1, int[] nums2) {
Deque<Integer> stack = new LinkedList();
Map<Integer, Integer> map = new HashMap();
for (var i = 0; i < nums2.length; i++) {
map.put(nums2[i], i);
}
int[] arr = new int[nums2.length];
for (var i = nums2.length - 1; i >= 0; i--) {
while (!stack.isEmpty()) {
int top = stack.peek();
if (top > nums2[i]) {
arr[i] = top;
stack.push(nums2[i]);
break;
} else {
stack.poll();
}
}
if (stack.isEmpty()) {
arr[i] = -1;
stack.push(nums2[i]);
}
}
int[] ans = new int[nums1.length];
for (var i = 0; i < nums1.length; i++) {
ans[i] = arr[map.get(nums1[i])];
}
return ans;
}
}
边栏推荐
- C form click event did not respond
- Summary and Reflection on issues related to seq2seq, attention and transformer in hands-on deep learning
- Codeforces round 684 (Div. 2) e - green shopping (line segment tree)
- Confusing basic concepts member variables local variables global variables
- Progressive JPEG pictures and related
- Array, date, string object method
- fs. Path module
- Applet (subcontracting)
- Oracle advanced (III) detailed explanation of data dictionary
- scipy. misc. imread()
猜你喜欢
随机推荐
嗨 FUN 一夏,与 StarRocks 一起玩转 SQL Planner!
Oracle advanced (III) detailed explanation of data dictionary
Kotlin introductory notes (IV) circular statements (simple explanation of while, for)
Composition of applet code
Multiple linear regression (sklearn method)
Hosting environment API
Kotlin introductory notes (II) a brief introduction to kotlin functions
NIPS2021 | 超越GraphCL,GNN+对比学习的节点分类新SOTA
Transfer learning and domain adaptation
Summary and Reflection on issues related to seq2seq, attention and transformer in hands-on deep learning
Kotlin introductory notes (I) kotlin variables and non variables
高性能Spark_transformation性能
基于STM32单片机的测温仪(带人脸检测)
驾驶证体检医院(114---2 挂对应的医院司机体检)
编辑器-vi、vim的使用
一题多解,ASP.NET Core应用启动初始化的N种方案[上篇]
Information and entropy, all you want to know is here
Node collaboration and publishing
Introduction Guide to stereo vision (2): key matrix (essential matrix, basic matrix, homography matrix)
Meta tag details