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