经典每日温度升高问题

class Solution {
    public int[] dailyTemperatures(int[] temperatures) {
        Deque<Integer> sta = new LinkedList<>();
        int[] res = new int[temperatures.length];
        for(int i = 0 ; i < temperatures.length;i++){
            while(!sta.isEmpty() && temperatures[sta.peekLast()] < temperatures[i]){
                int index = sta.pollLast();
                res[index] = i-index; 
            }
            sta.addLast(i);
        }
        return res;
    }
}

这题就是用栈做每日弹出,就是传值的逻辑有点乱,栈存储的是数组索引,通过栈找到当日温度比较大于当日后,存储到目标数组中。

经典每日温度升高问题

上一篇:Photoshop下曝光过度的外景人物图片快速修复美化技巧


下一篇:需求:vue项目 element 的 dialog 弹出窗口加上 最大化 还原 和自定义拖拽、拉伸弹窗