Sliding Window Maximum — C# Coding Problem
Difficulty: hard | Category: sliding-window
Problem Description
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 value in each window. **Approach:** Use a monotonic deque (decreasing from front to back) storing indices. O(n) time.
Examples
Example 1
Input: nums = [1,3,-1,-3,5,3,6,7], k = 3
Output: [3,3,5,5,6,7]
Example 2
Input: nums = [1], k = 1
Output: [1]