1def max_sliding_window(nums, k):2 dq = deque() # from collections3 res = []4 for r in range(len(nums)):5 if dq and dq[0] <= r - k:6 dq.popleft()7 while dq and nums[dq[-1]] < nums[r]:8 dq.pop()9 dq.append(r)10 if r >= k - 1:11 res.append(nums[dq[0]])12 return res