Sunday, February 26, 2023
n
is a length of an array of numbersn
is a length of an array of numbersfunc maxSlidingWindow(nums []int, k int) []int {
result := make([]int, 0)
queue := make([]int, 0)
for index, num := range nums {
for len(queue) > 0 && nums[queue[len(queue)-1]] <= num {
queue = queue[:len(queue)-1]
}
queue = append(queue, index)
if index >= k - 1 {
result = append(result, nums[queue[0]])
}
if queue[0] == index - k + 1 {
queue = queue[1:]
}
}
return result
}