publicint[]dailyTemperatures(int[]T){int n =T.length;int[] res =newint[n];//存的下标索引Stack<Integer> stk =newStack<>();for(int i =0; i < n; i++){//弹栈 while循环, 如果栈顶的温度比当前的温度小,这个当前的温度是满足题意的首次出现的最高温度while(!stk.isEmpty()&&T[stk.peek()]<T[i]){int idx = stk.pop();//之前的那个索引
res[idx]= i - idx;//间隔的天数}
stk.push(i);//入栈}return res;}
publicint[]dailyTemperatures(int[]T){int n =T.length;int[] res =newint[n];//存的下标索引Deque<Integer> stk =newArrayDeque<>();for(int i =0; i < n; i++){//弹栈 while循环, 如果栈顶的温度比当前的温度小,这个当前的温度是满足题意的首次出现的最高温度while(!stk.isEmpty()&&T[stk.peekFirst()]<T[i]){int idx = stk.pollFirst();//之前的那个索引
res[idx]= i - idx;//间隔的天数}
stk.addFirst(i);//入栈}return res;}