首页 > 其他 > 详细

239.滑动窗口最大值

时间:2021-01-02 23:00:06      阅读:25      评论:0      收藏:0      [点我收藏+]
class Solution {
       public int[] maxSlidingWindow(int[] nums, int k) {
        int n = nums.length;
        int index = 0;
        int[] res = new int[n - k + 1];
        Deque<Integer> dq =new ArrayDeque<>();
        for (int i = 0; i < nums.length; i++) {
            if (!dq.isEmpty() && dq.getFirst() == i - k){
                dq.removeFirst();
            }
            while (!dq.isEmpty() && nums[dq.getLast()] < nums[i]){
                dq.removeLast();
            }
            dq.add(i);
            if (i - k >= -1){
                res[index++] = nums[dq.getFirst()];
            }
        }
        return res;

    }
}

239.滑动窗口最大值

原文:https://www.cnblogs.com/linyxBlog/p/14223463.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!