Daily Temperatures LeetCode solution in Java

1
class Solution {
2
public int[] dailyTemperatures(int[] temperatures) {
3
HashMap<Integer, Integer> hm = new HashMap<>();
4
Stack<Integer> st = new Stack<>();
5
for (int i = 0; i < temperatures.length; i++) {
6
while (st.size() > 0 && temperatures[i] > temperatures[st.peek()]) {
7
hm.put(st.pop(), i);
8
}
9
st.push(i);
10
}
11
int[] ans = new int[temperatures.length];
12
for (int i = 0; i < temperatures.length; i++) {
13
if (hm.containsKey(i)) {
14
ans[i] = hm.get(i) - i;
15
} else {
16
ans[i] = 0;
17
}
18
}
19
return ans;
20
}
21
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0