#+PROPERTY: STUDY_DECK_02 * TODO 0239. Sliding Window Maximum :hard: :PROPERTIES: :NEETCODE: [[file:../../roadmap.org::*0239. Sliding Window Maximum][0239. Sliding Window Maximum]] :END: You are given an array of integers ~nums~, there is a sliding window of size ~k~ which is moving from the very left of the array to the very right. You can only see the ~k~ numbers in the window. Each time the sliding window moves right by one position. Return /the max sliding window/. *Example 1:* #+begin_src Input: nums = [1,3,-1,-3,5,3,6,7], k = 3 Output: [3,3,5,5,6,7] Explanation: Window position Max --------------- ----- [1 3 -1] -3 5 3 6 7 3 1 [3 -1 -3] 5 3 6 7 3 1 3 [-1 -3 5] 3 6 7 5 1 3 -1 [-3 5 3] 6 7 5 1 3 -1 -3 [5 3 6] 7 6 1 3 -1 -3 5 [3 6 7] 7 #+end_src *Example 2:* #+begin_src Input: nums = [1], k = 1 Output: [1] #+end_src *Constraints:* - ~1 <= nums.length <= 10^{5}~ - ~-10^{4} <= nums[i] <= 10^{4}~ - ~1 <= k <= nums.length~ ** TODO Approach Write your approach here. ** TODO Python #+begin_src python class Solution: def maxSlidingWindow(self, nums: List[int], k: int) -> List[int]: #+end_src ** TODO C++ #+begin_src cpp class Solution { public: vector maxSlidingWindow(vector& nums, int k) { } }; #+end_src