239. Sliding Window Maximum

Posted ymjyqsx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了239. Sliding Window Maximum相关的知识,希望对你有一定的参考价值。

https://www.cnblogs.com/grandyang/p/4656517.html

用双端队列实现,最大值在队列首部

class Solution {
public:
    vector<int> maxSlidingWindow(vector<int>& nums, int k) {
        vector<int> result;
        deque<int> d;
        for(int i = 0;i < nums.size();i++){
            if(!d.empty() && d.front() == i - k)
                d.pop_front();
            while(!d.empty() && nums[d.back()] < nums[i])
                d.pop_back();
            d.push_back(i);
            if(i - k >= -1)
                result.push_back(nums[d.front()]);
        }
        return result;
    }
};

 

以上是关于239. Sliding Window Maximum的主要内容,如果未能解决你的问题,请参考以下文章

239. Sliding Window Maximum

239.Sliding Window Maximum

leetcode 239. Sliding Window Maximum

leetcode_239. 滑动窗口最大值

239. Sliding Window Maximum

239. Sliding Window Maximum