Skip to content

Commit 92fcd29

Browse files
Merge pull request youngyangyang04#586 from caozheng0401/master
添加 496.下一个更大元素 Java方法
2 parents 95df4f2 + 8aee509 commit 92fcd29

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed

problems/0496.下一个更大元素I.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,37 @@ public:
186186
建议大家把情况一二三想清楚了,先写出版本一的代码,然后在其基础上在做精简!
187187

188188
## 其他语言版本
189+
Java
190+
```java
191+
class Solution {
192+
public int[] nextGreaterElement(int[] nums1, int[] nums2) {
193+
Stack<Integer> temp = new Stack<>();
194+
int[] res = new int[nums1.length];
195+
Arrays.fill(res,-1);
196+
HashMap<Integer, Integer> hashMap = new HashMap<>();
197+
for (int i = 0 ; i< nums1.length ; i++){
198+
hashMap.put(nums1[i],i);
199+
}
200+
temp.add(0);
201+
for (int i = 1; i < nums2.length; i++) {
202+
if (nums2[i] <= nums2[temp.peek()]) {
203+
temp.add(i);
204+
} else {
205+
while (!temp.isEmpty() && nums2[temp.peek()] < nums2[i]) {
206+
if (hashMap.containsKey(nums2[temp.peek()])){
207+
Integer index = hashMap.get(nums2[temp.peek()]);
208+
res[index] = nums2[i];
209+
}
210+
temp.pop();
211+
}
212+
temp.add(i);
213+
}
214+
}
189215

216+
return res;
217+
}
218+
}
219+
```
190220
Python:
191221
```python3
192222
class Solution:

problems/0503.下一个更大元素II.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,6 @@ public:
9595
## 其他语言版本
9696
9797
Java:
98-
9998
```Java
10099
class Solution {
101100
public int[] nextGreaterElements(int[] nums) {

0 commit comments

Comments
 (0)