【Leetcode】239. 滑动窗口最大值

【Leetcode】239. 滑动窗口最大值

题目链接

【Leetcode】239. 滑动窗口最大值

代码

func maxSlidingWindow(nums []int, k int) []int {
   
	// 单调队列使用的栈
	q := []int{
   }
	n := len(nums)
	// 结果切片
	ans := []int{
   }
	// 枚举切片
	for i := 0; i < n; i++ {
   
		// 如果栈顶元素 <= 当前元素,则一直出栈
		for len(q) > 0 && nums[q[len(q)-1]] <= nums[i] {
   
			q = q[:len(q)-1]
		}
		// 当前元素入栈
		q = append(q, i)
		// 如果窗口大小 > k,则左边界右移
		if len(q) > 0 && i-q[0]+1 > k {
   
			q = q[1:]
		}
		// 添加结果
		if i >= k-1 {
   
			ans = append(ans, nums[q[0]])
		}
	}
	return ans
}

相关推荐

  1. Leetcode239. 滑动窗口

    2024-01-18 13:20:09       39 阅读
  2. LeetCode239. 滑动窗口

    2024-01-18 13:20:09       27 阅读
  3. Leetcode 239 滑动窗口

    2024-01-18 13:20:09       20 阅读
  4. LeetCode 239. 滑动窗口

    2024-01-18 13:20:09       11 阅读
  5. LeetCode-239.滑动窗口

    2024-01-18 13:20:09       8 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-18 13:20:09       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-18 13:20:09       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-18 13:20:09       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-18 13:20:09       18 阅读

热门阅读

  1. 【DFS】130.被围绕的区域

    2024-01-18 13:20:09       39 阅读
  2. c# 学习笔记 - 异步编程

    2024-01-18 13:20:09       36 阅读
  3. IBM V5000 V7000更换控制器注意事项

    2024-01-18 13:20:09       35 阅读
  4. 页面嵌入iframe Cookie丢失问题解决

    2024-01-18 13:20:09       37 阅读