hot 100

白天 夜间 首页 下载 阅读记录
  我的书签   添加书签   移除书签

单调队列 (双端队列 deque)

浏览 89 扫码 分享 2022-07-10 19:21:38

若有收获,就点个赞吧

0 人点赞

上一篇:
下一篇:
  • 书签
  • 添加书签 移除书签
  • 单调栈
    • [简单] 496. 下一个更大元素 I
    • [中等] 503. 下一个更大元素 II
    • [中等] 739. 每日温度
    • [困难] 84. 柱状图中最大的矩形
    • [中等] 907. 子数组的最小值之和
    • [困难] 85. 最大矩形
  • 单调队列 (双端队列 deque)
    • [困难] 239. 滑动窗口最大值
    • [中等] 剑指 Offer 59 - II. 队列的最大值
    • [困难] 862. 和至少为 K 的最短子数组
    • [中等] 1438. 绝对差不超过限制的最长连续子数组
  • 优先队列(堆)
    • [中等] 347. 前 K 个高频元素
    • [中等] 692. 前K个高频单词
    • [困难] 23. 合并K个升序链表
    • [困难] 剑指 Offer 41. 数据流中的中位数
    • [困难] 480. 滑动窗口中位数
    • [中等] 1642. 可以到达的最远建筑
    • [中等] 767. 重构字符串
      • [困难] 407. 接雨水 II
  • 栈
    • [简单] 1047. 删除字符串中的所有相邻重复项
    • [中等] 946. 验证栈序列
  • 队列
    • [中等] 362. 敲击计数器
  • 动态规划
    • 贪心算法
      • [中等] 55. 跳跃游戏
      • [中等] 45. 跳跃游戏 II
      • [中等] 253. 会议室 II
      • [中等] 435. 无重叠区间
      • [中等] 452. 用最少数量的箭引爆气球
      • [中等] 134. 加油站
      • [中等] 1642. 可以到达的最远建筑
      • [中等] 767. 重构字符串
    • 股票买卖问题
      • [简单] 121. 买卖股票的最佳时机
      • [简单] 122. 买卖股票的最佳时机 II
      • [中等] 309. 最佳买卖股票时机含冷冻期
      • [中等] 714. 买卖股票的最佳时机含手续费
      • [困难] 123. 买卖股票的最佳时机 III
    • 打家劫舍问题
      • [中等] 198. 打家劫舍
      • [中等] 213. 打家劫舍 II
      • [中等] 337. 打家劫舍 III
    • 二维 dp 数组
      • 区间 DP
        • [中等] 877. 石子游戏
      • [困难] 312. 戳气球
      • [困难] 10. 正则表达式匹配
      • [困难] 44. 通配符匹配
      • [困难] 72. 编辑距离
      • [中等] 62. 不同路径
      • [中等] 63. 不同路径 II
      • [中等] 64. 最小路径和
      • [中等] 221. 最大正方形
      • [困难] 1312. 让字符串成为回文串的最少插入次数
      • [中等] 1262. 可被三整除的最大和
      • [困难] 115. 不同的子序列
      • [中等] 1162. 地图分析
    • 0-1 背包问题
      • [简单] NC145 01背包
      • [中等] 416. 分割等和子集
      • [中等] 494. 目标和
    • 子集背包问题
    • 完全背包问题
      • [中等] NC309 完全背包
      • [中等] 279. 完全平方数
      • [中等] 322. 零钱兑换
      • [中等] 518. 零钱兑换 II
    • 输出最值路径
      • [困难] 656. 金币路径
    • 树形 DP
      • [困难] 968. 监控二叉树
    • [简单] 53. 最大子数组和
    • [简单] 70. 爬楼梯
    • [中等] 剑指 Offer 46. 把数字翻译成字符串
    • [简单] 509. 斐波那契数
    • [中等] 300. 最长递增子序列
    • [困难] 354. 俄罗斯套娃信封问题
    • [困难] 32. 最长有效括号
    • [中等] 96. 不同的二叉搜索树
    • [中等] 139. 单词拆分
    • [中等] 152. 乘积最大子数组
    • [简单] 338. 比特位计数
    • [中等] 131. 分割回文串
    • [中等] 91. 解码方法
    • [困难] 887. 鸡蛋掉落
    • [中等] 264. 丑数 II
  • 数组排序(快排/堆排/快速选择等)
    • 归并排序 (逆序对)
      • [困难] 剑指 Offer 51. 数组中的逆序对
    • 区间/会议室问题
      • [中等] 1288. 删除被覆盖区间
      • [中等] 56. 合并区间
      • [中等] 986. 区间列表的交集
      • [简单] 252. 会议室
      • [困难] 759. 员工空闲时间
    • 字典序排序
      • [中等] 1233. 删除子文件夹
    • [中等] 215. 数组中的第K个最大元素
    • [中等] 406. 根据身高重建队列
  • 数组双指针
    • 左右指针(有序数组)(二分)
      • n 数之和
        • [中等] 167. 两数之和 II - 输入有序数组
        • [中等] 15. 三数之和
          • [中等] 18. 四数之和
      • 二分查找
        • 旋转排序数组
          • [中等] 33. 搜索旋转排序数组
          • [中等] 面试题 10.03. 搜索旋转数组
          • [简单] 剑指 11. 旋转数组的最小数字
          • [中等] 153. 寻找旋转排序数组中的最小值
          • [困难] 154. 寻找旋转排序数组中的最小值 II
        • [简单] 704. 二分查找
        • [简单] 35. 搜索插入位置
        • [中等] 34. 在排序数组中查找元素的第一个和最后一个位置
        • [中等] 162. 寻找峰值
        • [简单] 852. 山脉数组的峰顶索引
        • [困难] 4. 寻找两个正序数组的中位数
        • [简单] 69. x 的平方根
        • [中等] 240. 搜索二维矩阵 II
        • [中等] 74. 搜索二维矩阵
        • [困难] 793. 阶乘函数后 K 个零
        • [中等] 274. H 指数
        • [中等] 275. H 指数 II
        • [困难] 878. 第 N 个神奇数字
        • [困难] 1095. 山脉数组中查找目标值
        • [中等] 1060. 有序数组中的缺失元素
        • [中等] 222. 完全二叉树的节点个数
      • [困难] 42. 接雨水
      • [中等] 11. 盛最多水的容器
      • [简单] 344. 反转字符串
      • [中等] 75. 颜色分类 的一次遍历方法
      • [中等] 633. 平方数之和
      • [中等] 870. 优势洗牌
    • 滑动窗口(子串问题)
      • [困难] 76. 最小覆盖子串
      • [中等] 567. 字符串的排列
      • [中等] 438. 找到字符串中所有字母异位词
      • [中等] 3. 无重复字符的最长子串
      • [困难] Leetcode 340. 至多包含 K 个不同字符的最长子串
      • [中等] 1438. 绝对差不超过限制的最长连续子数组
      • [中等] 1156. 单字符重复子串的最大长度
      • [中等] 1574. 删除最短的子数组使剩余数组有序
        • [中等] 187. 重复的DNA序列
    • 回文子串
      • [中等] 647. 回文子串
      • [中等] 5. 最长回文子串
    • 两个数组两个指针
      • [简单] 88. 合并两个有序数组
      • [简单] 415. 字符串相加
      • [中等] 43. 字符串相乘
      • [简单] 392. 判断子序列
      • [中等] 324. 摆动排序 II
    • 快慢指针
      • [简单] 283. 移动零
      • [简单] 26. 删除有序数组中的重复项
      • [中等] 287. 寻找重复数
    • [简单] 922. 按奇偶排序数组 II
  • 前缀和(用于求区间和)
    • 一维前缀和
      • [简单] 303. 区域和检索 - 数组不可变
      • [中等] 560. 和为 K 的子数组
      • [中等] 523. 连续的子数组和
      • [中等] 974. 和可被 K 整除的子数组
    • 二维前缀和
      • [中等] 304. 二维区域和检索 - 矩阵不可变
      • [困难] 面试题 17.24. 最大子矩阵
    • 树的前缀和
      • [中等] 437. 路径总和 III
    • 后缀和
      • [中等] 848. 字母移位
  • 二维数组遍历
    • [中等] 48. 旋转图像
    • [中等] 54. 螺旋矩阵
    • [中等] 59. 螺旋矩阵 II
    • [中等] 36. 有效的数独
    • [中等] 73. 矩阵置零
  • 哈希表
    • 原地哈希
      • [中等] 442. 数组中重复的数据
      • [简单] 448. 找到所有数组中消失的数字
    • [中等] 128. 最长连续序列
    • [中等] 1487. 保证文件名唯一
    • [中等] 187. 重复的DNA序列
  • 链表
    • 双指针
      • [中等] 2. 两数相加
      • [简单] 21. 合并两个有序链表
      • [中等] 19. 删除链表的倒数第 N 个结点
      • [简单] 876. 链表的中间结点
      • [简单] 141. 环形链表
      • [中等] 142. 环形链表 II
      • [简单] 160. 相交链表
      • [简单] 206. 反转链表
    • [中等] 24. 两两交换链表中的节点
    • [简单] 234. 回文链表
    • [中等] 92. 反转链表 II
    • [困难] 25. K 个一组翻转链表
    • [中等] 143. 重排链表
    • [中等] 148. 排序链表
    • [简单] 83. 删除排序链表中的重复元素
    • [中等] 82. 删除排序链表中的重复元素 II
  • DFS 深度优先遍历
    • 递归回溯
      • 排列、组合、子集问题
        • [中等] 78. 子集
        • [中等] 77. 组合
        • [中等] 46. 全排列
        • [中等] 90. 子集 II
        • [中等] 40. 组合总和 II
        • [中等] 47. 全排列 II
        • [中等] 39. 组合总和
      • [困难] 301. 删除无效的括号
      • [中等] 79. 单词搜索
      • [中等] 93. 复原 IP 地址
      • [中等] 131. 分割回文串
      • [困难] 679. 24 点游戏
      • [困难] 37. 解数独
      • [中等] 1059. 从始点到终点的所有路径
      • [中等] 698. 划分为k个相等的子集
      • [困难] 51. N 皇后 & 面试题 08.12. 八皇后
      • [困难] 980. 不同路径 III
    • 记忆化DFS
      • [困难] 329. 矩阵中的最长递增路径
    • 递归分治
      • [中等] 241. 为运算表达式设计优先级
      • [中等] 50. Pow(x, n)
    • 岛屿问题
      • [中等] 200. 岛屿数量
      • [中等] 547. 省份数量
      • [中等] 1254. 统计封闭岛屿的数目
      • [中等] 130. 被围绕的区域
      • [中等] 1020. 飞地的数量
      • [中等] 695. 岛屿的最大面积
      • [中等] 1905. 统计子岛屿
      • [中等] 785. 判断二分图
      • [中等] 694. 不同岛屿的数量
  • BFS 广度优先遍历
    • 层序遍历
      • [中等] 752. 打开转盘锁
      • [困难] 127. 单词接龙
      • [中等] 863. 二叉树中所有距离为 K 的结点
    • 多源 BFS
      • [中等] 1162. 地图分析
    • [中等] 133. 克隆图
  • 二叉树
    • 前/中/后序/层序遍历
      • 层序遍历 BFS
        • [中等] 102. 二叉树的层序遍历
        • [中等] 103. 二叉树的锯齿形层序遍历
        • [中等] 662. 二叉树最大宽度
        • [中等] 116. 填充每个节点的下一个右侧节点指针
        • [中等] 863. 二叉树中所有距离为 K 的结点
      • [简单] 144. 二叉树的前序遍历
      • [简单] 94. 二叉树的中序遍历
      • [简单] 145. 二叉树的后序遍历
      • [中等] 105. 从前序与中序遍历序列构造二叉树
      • [中等] 889. 根据前序和后序遍历构造二叉树
      • [中等] 173. 二叉搜索树迭代器
      • [中等] 386. 字典序排数
    • 后序遍历
      • [简单] 543. 二叉树的直径
      • [困难] 124. 二叉树中的最大路径和
      • [简单] 110. 平衡二叉树
      • [中等] 652. 寻找重复的子树
    • 二叉搜索树 BST
      • [中等] 230. 二叉搜索树中第K小的元素
      • [中等] 538. 把二叉搜索树转换为累加树
      • [中等] 450. 删除二叉搜索树中的节点
      • [中等] 98. 验证二叉搜索树
      • [中等] 剑指 Offer 36. 二叉搜索树与双向链表
      • [中等] 109. 有序链表转换二叉搜索树
      • [中等] 333. 最大 BST 子树
      • [中等] 449. 序列化和反序列化二叉搜索树
      • [中等] 701. 二叉搜索树中的插入操作
      • [中等] 99. 恢复二叉搜索树
    • 分解问题(类似动态规划)
      • [简单] 112. 路径总和
    • 遍历(类似回溯算法)
      • [中等] 113. 路径总和 II
      • [中等] 988. 从叶结点开始的最小字符串
    • 完全二叉树
      • [中等] 222. 完全二叉树的节点个数
    • [简单] 104. 二叉树的最大深度
    • [简单] 226. 翻转二叉树
    • [中等] 114. 二叉树展开为链表
    • [简单] 剑指 Offer 68 - I. 二叉搜索树的最近公共祖先
    • [中等] 236. 二叉树的最近公共祖先
    • [中等] 199. 二叉树的右视图
    • [简单] 101. 对称二叉树
    • [中等] 449. 序列化和反序列化二叉搜索树
    • [困难] 297. 二叉树的序列化与反序列化
    • [困难] 428. 序列化和反序列化 N 叉树
    • [中等] 654. 最大二叉树
    • 补充题 12. 二叉树的下一个结点
    • [简单] 572. 另一棵树的子树
    • [简单] 993. 二叉树的堂兄弟节点
  • 图算法
    • 拓扑排序
      • [中等] 207. 课程表
      • [中等] 210. 课程表 II
    • 并查集
      • [中等] 399. 除法求值
      • [中等] 547. 省份数量
    • DFS
      • [中等] 785. 判断二分图
  • 括号问题/字符串遍历转换/计算器
    • 栈
      • 括号问题
        • [简单] 20. 有效的括号
        • [中等] 678. 有效的括号字符串
        • [中等] 394. 字符串解码
        • [中等] 1249. 移除无效的括号
      • 计算器
        • [困难] 224. 基本计算器
        • [中等] 227. 基本计算器 II
    • 递归回溯
      • [中等] 22. 括号生成
  • 二进制/位(比特)操作
    • 异或:a^a=0
      • [简单] 136. 只出现一次的数字
      • [简单] 268. 丢失的数字
    • n & (n-1) 消除 n 二进制位最后一个 1
      • [简单] 191. 位1的个数
      • [简单] 231. 2 的幂
    • [中等] 137. 只出现一次的数字 II
  • 设计数据结构
    • [中等] 146. LRU 缓存
    • [困难] 460. LFU 缓存
    • [简单] 155. 最小栈
    • [简单] 232. 用栈实现队列
    • [简单] 225. 用队列实现栈
    • [中等] 208. 实现 Trie (前缀树)
    • [中等] 384. 打乱数组
    • [中等] 470. 用 Rand7() 实现 Rand10()
    • [困难] 480. 滑动窗口中位数
    • [中等] 380. O(1) 时间插入、删除和获取随机元素
    • [简单] 706. 设计哈希映射
  • 大数越界问题
    • [中等] 7. 整数反转
    • [中等] 633. 平方数之和
  • 找规律/技巧题
    • 阶乘
      • [中等] 172. 阶乘后的零
      • [困难] 793. 阶乘函数后 K 个零
      • [困难] 60. 排列序列
    • 正则表达式
      • [中等] 468. 验证IP地址
    • 余数
      • [中等] 1497. 检查数组对是否可以被 k 整除
    • [中等] 204. 计数质数
    • [困难] 135. 分发糖果
    • [困难] 41. 缺失的第一个正数
    • [中等] 89. 格雷编码
    • [中等] 166. 分数到小数
    • [简单] 628. 三个数的最大乘积
    • [中等] 189. 轮转数组
    • [中等] 223. 矩形面积
    • [简单] 119. 杨辉三角 II
  • 整数数位
    • [简单] 9. 回文数
    • [简单] 168. Excel表列名称
    • [困难] 233. 数字 1 的个数
  • 模拟
    • 阿拉伯数字/英文/中文转换
      • [困难] 273. 整数转换英文表示
      • 补充题 13. 中文数字转阿拉伯数字
    • [中等] 946. 验证栈序列
    • [简单] 1154. 一年中的第几天
    • [中等] 311. 稀疏矩阵的乘法
    • [中等] 722. 删除注释
    • [简单] 485. 最大连续 1 的个数
  • 字符串
    • [简单] 557. 反转字符串中的单词 III
    • [简单] 1566. 重复至少 K 次且长度为 M 的模式
  • [简单] 1. 两数之和
  • [中等] 2. 两数相加
  • [中等] 3. 无重复字符的最长子串
  • [困难] 4. 寻找两个正序数组的中位数
  • [中等] 5. 最长回文子串
  • [困难] 10. 正则表达式匹配
  • [中等] 11. 盛最多水的容器
  • [简单] 14. 最长公共前缀
  • [中等] 15. 三数之和
  • [中等] 17. 电话号码的字母组合
  • [中等] 19. 删除链表的倒数第 N 个结点
  • [简单] 20. 有效的括号
  • [简单] 21. 合并两个有序链表
  • [中等] 22. 括号生成
  • [困难] 23. 合并K个升序链表
  • [中等] 31. 下一个排列
  • [困难] 32. 最长有效括号
  • [中等] 33. 搜索旋转排序数组
  • [中等] 34. 在排序数组中查找元素的第一个和最后一个位置
  • [中等] 39. 组合总和
  • [困难] 42. 接雨水
  • [中等] 46. 全排列
  • [中等] 48. 旋转图像
  • [中等] 49. 字母异位词分组
  • [简单] 53. 最大子数组和
  • [中等] 55. 跳跃游戏
  • [中等] 56. 合并区间
  • [中等] 62. 不同路径
  • [中等] 64. 最小路径和
  • [简单] 70. 爬楼梯
  • [困难] 76. 最小覆盖子串
  • [中等] 78. 子集
  • [中等] 79. 单词搜索
  • [困难] 84. 柱状图中最大的矩形
  • [困难] 85. 最大矩形
  • [简单] 94. 二叉树的中序遍历
  • [中等] 98. 验证二叉搜索树
  • [简单] 104. 二叉树的最大深度
  • [中等] 105. 从前序与中序遍历序列构造二叉树
  • [中等] 114. 二叉树展开为链表
  • [简单] 121. 买卖股票的最佳时机
  • [困难] 124. 二叉树中的最大路径和
  • [中等] 128. 最长连续序列
  • [简单] 136. 只出现一次的数字
  • [中等] 139. 单词拆分
  • [简单] 141. 环形链表
  • [中等] 142. 环形链表 II
  • [中等] 146. LRU 缓存
  • [中等] 148. 排序链表
  • [简单] 155. 最小栈
  • [简单] 160. 相交链表
  • [简单] 169. 多数元素
  • [中等] 198. 打家劫舍
  • [中等] 200. 岛屿数量
  • [简单] 206. 反转链表
  • [中等] 207. 课程表
  • [中等] 215. 数组中的第K个最大元素
  • [中等] 221. 最大正方形
  • [简单] 226. 翻转二叉树
  • [简单] 234. 回文链表
  • [中等] 236. 二叉树的最近公共祖先
  • [中等] 238. 除自身以外数组的乘积
  • [困难] 239. 滑动窗口最大值
  • [中等] 253. 会议室 II
  • [中等] 287. 寻找重复数
  • [中等] 300. 最长递增子序列
  • [困难] 301. 删除无效的括号
  • [中等] 309. 最佳买卖股票时机含冷冻期
  • [困难] 312. 戳气球
  • [中等] 322. 零钱兑换
  • [中等] 337. 打家劫舍 III
  • [简单] 338. 比特位计数
  • [中等] 347. 前 K 个高频元素
  • [中等] 394. 字符串解码
  • [中等] 399. 除法求值
  • [中等] 406. 根据身高重建队列
  • [中等] 437. 路径总和 III
  • [中等] 438. 找到字符串中所有字母异位词
  • [简单] 448. 找到所有数组中消失的数字
  • [简单] 461. 汉明距离
  • [中等] 494. 目标和
  • [中等] 538. 把二叉搜索树转换为累加树
  • [简单] 543. 二叉树的直径
  • [中等] 560. 和为 K 的子数组
  • [中等] 581. 最短无序连续子数组
  • [简单] 617. 合并二叉树
  • [中等] 621. 任务调度器
  • [中等] 647. 回文子串
  • [中等] 739. 每日温度
暂无相关搜索结果!

    让时间为你证明

    展开/收起文章目录

    分享,让知识传承更久远

    文章二维码

    手机扫一扫,轻松掌上读

    文档下载

    请下载您需要的格式的文档,随时随地,享受汲取知识的乐趣!
    PDF文档 EPUB文档 MOBI文档

    书签列表

      阅读记录

      阅读进度: 0.00% ( 0/0 ) 重置阅读进度

        思维导图备注