Scribbling

[C++] Deque<int> 본문

Computer Science/C++

[C++] Deque<int>

focalpoint 2024. 2. 6. 00:03

https://leetcode.com/problems/sliding-window-maximum/

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

'Computer Science > C++' 카테고리의 다른 글

[C++] Abstract Class, Interface, Multiple Inheritance  (0) 2024.02.14
[C++] lower_bound  (0) 2024.02.06
[C++] 전문가를 위한 C++ - Chapter 8  (0) 2023.10.07
[C++] find, deque, bfs, structured binding  (0) 2023.09.30
[C++] Smart pointers  (0) 2023.09.30