AlgoMaster Logo

Daily Temperatures

temperatures=[73, 74, 75, 71, 69, 72, 76, 73]
1public int[] dailyTemperatures(int[] temperatures) {
2    Stack<Integer> stack = new Stack<>();
3    int[] result = new int[temperatures.length];
4
5    for (int i = 0; i < temperatures.length; i++) {
6        while (!stack.isEmpty() && temperatures[i] > temperatures[stack.peek()]) {
7            int prevIndex = stack.pop();
8            result[prevIndex] = i - prevIndex;
9        }
10
11        stack.push(i);
12    }
13
14    return result;
15}
0 / 30
073174275371469572676773temperaturesresultstack