LeetCode解题汇总目录

此篇为学习完《数据结构与算法之美》后,在LeetCode刷题的汇总目录,方便大家查找(Ctrl+Find),一起刷题,一起PK交流!如果本文对你有帮助,可以给我点赞加油! Updated on 2022.6.12

刷题可以按照不同的专题进行,便于加强某个知识点的理解。另有《剑指Offer》面试题(更新完毕)《程序员面试金典》面试题(更新完毕)LintCode代码能力测试CAT

LeetCode MySQL 数据库解题目录

点击访问 我的 LeetCode 主页

我的 GitHub 主页

注:本文超过字数限制,完整版MD文件见Github

在这里插入图片描述

通过2204, 简单677/696, 中等1223/1413, 困难304/563

  • 2019.07.24 - 2019.11.09,AC + 400道(108天)

  • 2019.11.09 - 2019.11.24,AC + 100道,共计500道(123天,4个月)

  • 2019.11.24 - 2019.12.31,AC + 72 道,共计572道(160天)

  • 2020.01.01 - 2020.01.12,AC + 32 道,共计604道(172天)

  • 2020.01.12 - 2020.03.25,AC + 196道,共计800道,做了些面试题(245天,8个月)

  • 2020.03.25 - 2020.04.19,AC + 100道,共计900道(270天,9个月)

  • 2020.04.19 - 2020.05.19,AC + 100道,共计1000道(300天,10个月)

  • 2020.05.19 - 2020.05.27,AC + 24 道,共计1024道(程序员的数字 210

  • 2020.05.19 - 2020.06.18,AC + 100道,共计1100道(330天,11个月)

  • 2020.06.18 - 2020.07.04,AC + 100道,共计1200道(346天,50周)

  • 2020.07.04 - 2020.07.18,AC + 100道,共计1300道(360天)

  • 2020.07.18 - 2020.07.23,AC + 50 道,共计1350道(365天,刷题1周年

    过去一年提交4196次,目前刷题量:全站第46名

    竞赛积分1741,排名:全国1987,全球9027,竞赛最好成绩:前7.51% (记录于2020.7.23)

  • 2020.07.23 - 2020.07.29,AC + 50 道,共计1400道(371天)

  • 2020.07.29 - 2020.08.14,AC + 100道,共计1500道(387天)

  • 2020.08.14 - 2020.10.05,AC + 100道,共计1600道(439天)

参赛记录
LeetCode 2019 力扣杯全国秋季编程大赛(582/1541,前37.7%)
LeetCode 第 16 场双周赛(402/822,前48.9%)
LeetCode 第 17 场双周赛(469/897,前52.3%)
LeetCode 第 18 场双周赛(188/587,前32%)
LeetCode 第 19 场双周赛(231/1120,前20.6%)
LeetCode 第 20 场双周赛(294/1541,前19.1%,第1次全部通过🚀)
LeetCode 第 21 场双周赛(779/1913,前40.7%)
LeetCode 第 22 场双周赛(220/2041,前10.8%)
LeetCode 第 23 场双周赛(970/2044,前47.5%)
LeetCode 2020 力扣杯全国春季编程大赛(1644/4093,前40.2%)
LeetCode 第 24 场双周赛(326/1898,前17.2%)
LeetCode 第 186 场周赛(1060/3107,前34.1%)
LeetCode 第 25 场双周赛(718/1832,前39.2%)
LeetCode 第 187 场周赛(1336/3107,前43.0%)
LeetCode 第 26 场双周赛(363/1971,前18.4%)
LeetCode 第 27 场双周赛(1125/1966,前57.2%)
LeetCode 第 28 场双周赛(505/2144,前23.6%)
LeetCode 第 29 场双周赛(890/2259,前39.4%)
LeetCode 第 30 场双周赛(477/2545,前18.7%,第2次全部通过🚀)
LeetCode 第 197 场周赛(468/5273,前8.88%)
LeetCode 第 198 场周赛(434/5778,前7.51%)
LeetCode 第 31 场双周赛(273/2767,前9.87%,第3次全部通过🚀)
LeetCode 第 199 场周赛(757/5231,前14.5%)
LeetCode 第 32 场双周赛(983/2957,前33.2%)
LeetCode 第 201 场周赛(304/5614,前5.42%)
LeetCode 第 33 场双周赛(511/3304,前15.5%,第4次全部通过🚀)
LeetCode 第 34 场双周赛(385/2842,前13.5%)
LeetCode 2020 力扣杯全国秋季编程大赛(656/3244,前20.2%)
LeetCode 第 206 场周赛(733/4491,前16.3%)
LeetCode 第 35 场双周赛(216/2839,前7.61%)
LeetCode 第 207 场周赛(245/4115,前5.95%)
LeetCode 第 36 场双周赛(304/2204,前13.8%)
LeetCode 第 40 场双周赛(197/1891,前10.4%,第5次全部通过🚀)
LeetCode 第 41 场双周赛(283/1660,前17.1%)
LeetCode 第 219 场周赛(463/3709,前12.5%)
LeetCode 第 222 场周赛(221/3117,前7.09%)
LeetCode 第 43 场双周赛(374/1631,前22.9%)
LeetCode 第 223 场周赛(265/3871, 前6.85%)
LeetCode 第 44 场双周赛(260/1826,前14.2%)
LeetCode 第 225 场周赛(947/3851,前24.6%)
LeetCode 第 45 场双周赛(322/1676,前19.2%)
LeetCode 第 235 场周赛(322/4493,前7.17%)
LeetCode 第 237 场周赛(490/4576,前10.7%,第6次全部通过🚀)
LeetCode 第 53 场双周赛(139/3069,前4.53%,第7次全部通过🚀)
LeetCode 2021 力扣杯全国秋季编程大赛(第384名)

已解题目分类系列
LeetCode 1. 两数之和(哈希)LeetCode 旋转数组 系列(二分查找)
LeetCode 2. 两数相加(单链表反转)LeetCode 股票买卖 系列(动态规划)
LeetCode 3. 无重复字符的最长子串(滑动窗口+哈希)LeetCode 丑数 系列(DP/二分)
LeetCode 4. 寻找两个有序数组的中位数(二分查找,难)LeetCode 跳跃游戏 系列(贪心/BFS/DP)
LeetCode 5. 最长回文子串(动态规划)极小极大化 就用 二分查找
LeetCode 6. Z 字形变换(找规律)博弈DP、石子游戏等
LeetCode 7. 整数反转哈希记录前缀和状态,做差求中间段
LeetCode 8. 字符串转换整数 (atoi)差分思想
LeetCode 9. 回文数最长上升子序 DP
LeetCode 10. 正则表达式匹配(递归)*
LeetCode 11. 盛最多水的容器(双指针)
LeetCode 12/13 罗马数字与整型互转(哈希,贪心)
LeetCode 14. 最长公共前缀
LeetCode 15. 三数之和
LeetCode 16. 最接近的三数之和(固定左端+滑动窗口)
LeetCode 17. 电话号码的字母组合(回溯)
LeetCode 18. 四数之和(双指针)
LeetCode 19. 删除链表的倒数第N个节点(双指针)
LeetCode 20. 有效的括号(栈)
LeetCode 21. 合并两个有序链表(单链表)
LeetCode 22. 括号生成(回溯)
LeetCode 23. 合并K个排序链表(优先队列)
LeetCode 24. 两两交换链表中的节点(递归+循环)
LeetCode 25. K 个一组翻转链表
LeetCode 26. 删除排序数组中的重复项
LeetCode 27. 移除元素
LeetCode 28. 实现 strStr()
LeetCode 29. 两数相除(位运算)
LeetCode 30. 串联所有单词的子串(字符串哈希)
LeetCode 31. 下一个排列(线性扫描)
LeetCode 32. 最长有效括号(栈&DP)
LeetCode 33. 搜索旋转排序数组(二分查找)
LeetCode 34. 在排序数组中查找元素的第一个和最后一个位置(二分查找)
LeetCode 35. 搜索插入位置(二分查找)
LeetCode 36. 有效的数独(哈希)
LeetCode 37. 解数独(回溯)
LeetCode 38. 报数
LeetCode 39. 组合总和(回溯)
LeetCode 40. 组合总和 II(排列组合 回溯)
LeetCode 41. 缺失的第一个正数
LeetCode 42. 接雨水(双指针、单调栈)
LeetCode 43. 字符串相乘(大数乘法)
LeetCode 44. 通配符匹配(DP)
LeetCode 45. 跳跃游戏 II(贪心, 难)
LeetCode 46. 全排列(回溯)
LeetCode 47. 全排列 II(回溯+搜索剪枝)
LeetCode 48. 旋转图像(一次遍历+位运算)
LeetCode 49. 字母异位词分组(哈希)
LeetCode 50. Pow(x, n)(二分查找)
LeetCode 51. N皇后 / 52. N皇后 II(回溯)
LeetCode 53. 最大子序和(动态规划)
LeetCode 55. 跳跃游戏(贪心)
LeetCode 56. 合并区间(优先队列)
LeetCode 57. 插入区间(一次遍历)
LeetCode 58. 最后一个单词的长度
LeetCode 59. 螺旋矩阵 II && LeetCode 54. 螺旋矩阵
LeetCode 60. 第k个排列(回溯 & 康托展开)
LeetCode 61. 旋转链表
LeetCode 62. 不同路径(DP)
LeetCode 63. 不同路径 II(DP)
LeetCode 64. 最小路径和(DP)
LeetCode 65. 有效数字(逻辑题,难)
LeetCode 66. 加一
LeetCode 67. 二进制求和
LeetCode 68. 文本左右对齐(字符串逻辑题)
LeetCode 69. x 的平方根(二分查找)
LeetCode 70. 爬楼梯(动态规划)
LeetCode 71. 简化路径(栈)
LeetCode 72. 编辑距离(DP)
LeetCode 73. 矩阵置零
LeetCode 74. 搜索二维矩阵(二分查找)
LeetCode 75. 颜色分类(双指针)
LeetCode 76. 最小覆盖子串(滑动窗口)
LeetCode 77. 组合(回溯)
LeetCode 78. 子集(回溯)
LeetCode 79. 单词搜索(回溯DFS)
LeetCode 80. 删除排序数组中的重复项 II
LeetCode 81. 搜索旋转排序数组 II(二分查找)
LeetCode 82. 删除排序链表中的重复元素 II(链表)
LeetCode 83. 删除排序链表中的重复元素(链表)
LeetCode 84. 柱状图中最大的矩形(单调递增栈)
LeetCode 85. 最大矩形(DP,难)
LeetCode 86. 分隔链表
LeetCode 87. 扰乱字符串(记忆化递归 / DP)
LeetCode 88. 合并两个有序数组
LeetCode 89. 格雷编码
LeetCode 90. 子集 II(回溯+剪枝)
LeetCode 91. 解码方法(动态规划)
LeetCode 92. 反转链表 II(双指针)
LeetCode 93. 复原IP地址(回溯)
LeetCode 94. 二叉树的中序遍历(中序遍历)
LeetCode 95. 不同的二叉搜索树 II(递归)
LeetCode 96. 不同的二叉搜索树(DP)
LeetCode 97. 交错字符串(DP)
LeetCode 98. 验证二叉搜索树(中序遍历)
LeetCode 99. 恢复二叉搜索树(中序遍历)
LeetCode 100. 相同的树(二叉树遍历)
LeetCode 101. 对称二叉树(递归&循环)
LeetCode 102. 二叉树的层次遍历
LeetCode 103. 二叉树的锯齿形层次遍历(BFS / 双栈)
LeetCode 104. 二叉树的最大深度
LeetCode 105. 已知前序&中序 求二叉树
LeetCode 106. 已知中序&后序 求二叉树
LeetCode 107. 二叉树的层次遍历 II(队列)
LeetCode 108. 将有序数组转换为二叉搜索树
LeetCode 109. 有序链表转换二叉搜索树(快慢指针+递归)
LeetCode 110. 平衡二叉树(二叉树高度)
LeetCode 111. 二叉树的最小深度
LeetCode 112. 路径总和
LeetCode 113. 路径总和 II(回溯)
LeetCode 114. 二叉树展开为链表(递归)
LeetCode 115. 不同的子序列(DP)
LeetCode 116. 填充每个节点的下一个右侧节点指针(递归&循环)
LeetCode 117. 填充每个节点的下一个右侧节点指针 II(递归&循环)
LeetCode 118. 杨辉三角
LeetCode 119. 杨辉三角 II
LeetCode 120. 三角形最小路径和
LeetCode 121. 买卖股票的最佳时机
LeetCode 122. 买卖股票的最佳时机 II
LeetCode 123. 买卖股票的最佳时机 III(动态规划)
LeetCode 124. 二叉树中的最大路径和(DFS)
LeetCode 125. 验证回文串
LeetCode 126. 单词接龙 II(图的BFS)
LeetCode 127. 单词接龙(图的BFS/双向BFS)
LeetCode 128. 最长连续序列(哈希set)
LeetCode 129. 求根到叶子节点数字之和(DFS)
LeetCode 130. 被围绕的区域(图的BFS/DFS)
LeetCode 131. 分割回文串(回溯)
LeetCode 132. 分割回文串 II(DP)
LeetCode 133. 克隆图(图的BFS/DFS)
LeetCode 134. 加油站(贪心)
LeetCode 135. 分发糖果(DP)
LeetCode 136. 只出现一次的数字(异或^)
LeetCode 137. 只出现一次的数字 II(位运算)
LeetCode 138. 复制带随机指针的链表(哈希 / 深拷贝)
LeetCode 139. 单词拆分(DP)
LeetCode 140. 单词拆分 II(DP+回溯)
LeetCode 141. 环形链表
LeetCode 142. 环形链表 II(链表环的检测)
LeetCode 143. 重排链表(链表反转+快慢指针)
LeetCode 144. 二叉树的前序遍历(前序遍历)
LeetCode 145. 二叉树的后序遍历(后序遍历&总结)
LeetCode 146. LRU缓存机制(哈希链表)
LeetCode 147. 对链表进行插入排序(链表)
LeetCode 148. 排序链表(归并排序)
LeetCode 149. 直线上最多的点数
LeetCode 150. 逆波兰表达式求值(栈)
LeetCode 151. 翻转字符串里的单词(栈)
LeetCode 152. 乘积最大子序列(DP)
LeetCode 153. 寻找旋转排序数组中的最小值(二分查找)
LeetCode 154. 寻找旋转排序数组中的最小值 II(二分查找)
LeetCode 155. 最小栈
LeetCode 156. 上下翻转二叉树(DFS)*
LeetCode 157. 用 Read4 读取 N 个字符
LeetCode 158. 用 Read4 读取 N 个字符 II
LeetCode 159. 至多包含两个不同字符的最长子串(滑动窗口)
LeetCode 160. 相交链表
LeetCode 161. 相隔为 1 的编辑距离(DP/遍历)
LeetCode 162. 寻找峰值(二分查找)
LeetCode 163. 缺失的区间
LeetCode 164. 最大间距(桶排序)
LeetCode 165. 比较版本号
LeetCode 166. 分数到小数(小数除法)
LeetCode 167. 两数之和 II - 输入有序数组(双指针)
LeetCode 168. Excel表列名称
LeetCode 169. 求众数
LeetCode 170. 两数之和 III - 数据结构设计(哈希map)
LeetCode 171. Excel表列序号(26进制转10进制)
LeetCode 172. 阶乘后的零(5的因子)
LeetCode 173. 二叉搜索树迭代器(中序遍历)
LeetCode 174. 地下城游戏(DP)
LeetCode 179. 最大数(自定义谓词函数(Lambda表达式)排序)
LeetCode 186. 翻转字符串里的单词 II
LeetCode 187. 重复的DNA序列(哈希/位运算)
LeetCode 188. 买卖股票的最佳时机 IV(动态规划)
LeetCode 189. 旋转数组(环形替换)
LeetCode 190. 颠倒二进制位(位运算)
LeetCode 191. 位1的个数(位运算)
LeetCode 198. 打家劫舍(DP)
LeetCode 199. 二叉树的右视图(DFS & 按层queue)
LeetCode 200. 岛屿数量(图的遍历)
LeetCode 201. 数字范围按位与(位运算)
LeetCode 202. 快乐数(快慢指针)
LeetCode 203. 移除链表元素
LeetCode 204. 计数质数(质数的倍数不是质数)
LeetCode 205. 同构字符串(哈希map)
LeetCode 206. 反转链表
LeetCode 207. 课程表(拓扑排序)
LeetCode 208. 实现 Trie (前缀树)
LeetCode 209. 长度最小的子数组(滑动窗口)
LeetCode 210. 课程表 II(拓扑排序)
LeetCode 211. 添加与搜索单词 - 数据结构设计(Trie树)
LeetCode 212. 单词搜索 II(Trie树+DFS)
LeetCode 213. 打家劫舍 II(DP)
LeetCode 214. 最短回文串(字符串哈希)
LeetCode 215. 数组中的第K个最大元素(快速排序)
LeetCode 216. 组合总和 III(排列组合 回溯)
LeetCode 217. 存在重复元素(哈希)
LeetCode 218. 天际线问题(multiset优先队列)*
LeetCode 219. 存在重复元素 II(哈希)
LeetCode 220. 存在重复元素 III(lower_bound)
LeetCode 221. 最大正方形(DP)
LeetCode 222. 完全二叉树的节点个数(二分查找)
LeetCode 223. 矩形面积
LeetCode 224. 基本计算器(栈)
LeetCode 225. 用队列实现栈
LeetCode 226. 翻转二叉树(DFS & BFS)
LeetCode 227. 基本计算器 II(栈)
LeetCode 228. 汇总区间
LeetCode 229. 求众数 II(摩尔投票)
LeetCode 230. 二叉搜索树中第K小的元素(中序遍历)
LeetCode 231. 2的幂 && LeetCode 338. 比特位计数(2进制1的个数)
LeetCode 232. 用栈实现队列(双栈法->队列)
LeetCode 233. 数字 1 的个数(找规律)
LeetCode 234. 回文链表(快慢指针+链表反转)
LeetCode 235. 二叉搜索树的最近公共祖先
LeetCode 236. 二叉树的最近公共祖先
LeetCode 237. 删除链表中的节点
LeetCode 238. 除自身以外数组的乘积
LeetCode 239. 滑动窗口最大值(双端队列)
LeetCode 240. 搜索二维矩阵 II(二分查找 && 分治)
LeetCode 241. 为运算表达式设计优先级(动态规划)
LeetCode 242. 有效的字母异位词
LeetCode 243. 最短单词距离
LeetCode 244. 最短单词距离 II(哈希map+set二分查找)
LeetCode 245. 最短单词距离 III
LeetCode 246. 中心对称数(哈希)
LeetCode 247. 中心对称数 II(DP)
LeetCode 248. 中心对称数 III(DFS/BFS)
LeetCode 249. 移位字符串分组(哈希)
LeetCode 250. 统计同值子树(递归)
LeetCode 251. 展开二维向量
LeetCode 252. 会议室(排序)
LeetCode 253. 会议室 II(贪心+优先队列)
LeetCode 254. 因子的组合(回溯)*
LeetCode 255. 验证前序遍历序列二叉搜索树(单调栈)*
LeetCode 256. 粉刷房子(DP)
LeetCode 257. 二叉树的所有路径(DFS)
LeetCode 258. 各位相加
LeetCode 259. 较小的三数之和(固定一点,内层双指针)
LeetCode 260. 只出现一次的数字 III(位运算)
LeetCode 261. 以图判树(全部连通+边数=V-1)
LeetCode 263. 丑数 && 264. 丑数 II(DP)
LeetCode 265. 粉刷房子 II(DP)
LeetCode 266. 回文排列(计数)
LeetCode 267. 回文排列 II(回溯)
LeetCode 268. 缺失数字
LeetCode 269. 火星词典(拓扑排序)
LeetCode 270. 最接近的二叉搜索树值
LeetCode 271. 字符串的编码与解码(4位16进制字符+字符串)
LeetCode 272. 最接近的二叉搜索树值 II(栈+优先队列)
LeetCode 273. 整数转换英文表示
LeetCode 274. H指数(排序,哈希)
LeetCode 275. H指数 II(二分查找)
LeetCode 276. 栅栏涂色(DP)
LeetCode 277. 搜寻名人(思维题)
LeetCode 278. 第一个错误的版本(二分查找)
LeetCode 279. 完全平方数(DP)
LeetCode 280. 摆动排序
LeetCode 281. 锯齿迭代器(map+vector)
LeetCode 283. 移动零
LeetCode 284. 顶端迭代器
LeetCode 285. 二叉搜索树中的顺序后继(中序遍历)
LeetCode 286. 墙与门(BFS)
LeetCode 287. 寻找重复数(BitMap)
LeetCode 288. 单词的唯一缩写(哈希)
LeetCode 289. 生命游戏(位运算)
LeetCode 290. 单词规律(哈希)
LeetCode 291. 单词规律 II(回溯)
LeetCode 292. Nim 游戏
LeetCode 293. 翻转游戏
LeetCode 294. 翻转游戏 II(记忆化递归)
LeetCode 295. 数据流的中位数(大小堆)
LeetCode 296. 最佳的碰头地点(坐标独立+中位数的地方最近)
LeetCode 297. 二叉树的序列化与反序列化(前序遍历&层序遍历)
LeetCode 298. 二叉树最长连续序列(自顶向下)
LeetCode 299. 猜数字游戏
LeetCode 300. 最长上升子序列
LeetCode 301. 删除无效的括号(回溯)
LeetCode 302. 包含全部黑色像素的最小矩形(BFS)
LeetCode 303. 区域和检索 - 数组不可变(前缀和)
LeetCode 304. 二维区域和检索 - 矩阵不可变(DP)
LeetCode 305. 岛屿数量 II(并查集)
LeetCode 306. 累加数(暴力回溯)
LeetCode 307. 区域和检索 - 数组可修改(树状数组)
LeetCode 308. 二维区域和检索 - 可变(前缀和)
LeetCode 309. 最佳买卖股票时机含冷冻期(动态规划)
LeetCode 310. 最小高度树(图 聪明的BFS,从外向内包围)
LeetCode 311. 稀疏矩阵的乘法
LeetCode 312. 戳气球(DP,难)
LeetCode 313. 超级丑数(动态规划)
LeetCode 314. 二叉树的垂直遍历(BFS/DFS)
LeetCode 315. 计算右侧小于当前元素的个数(二叉查找树&二分查找&归并排序逆序数总结)
LeetCode 316. 去除重复字母(单调栈)
LeetCode 317. 离建筑物最近的距离(逆向BFS)*
LeetCode 318. 最大单词长度乘积(位运算)
LeetCode 319. 灯泡开关(找规律)
LeetCode 320. 列举单词的全部缩写(回溯/位运算)
LeetCode 321. 拼接最大数(单调栈)*
LeetCode 322. 零钱兑换(DP)
LeetCode 323. 无向图中连通分量的数目(并查集)
LeetCode 324. 摆动排序 II
LeetCode 325. 和等于 k 的最长子数组长度(哈希表记录第一次出现的状态)
LeetCode 326. 3的幂
LeetCode 327. 区间和的个数(multiset二分查找/归并排序)
LeetCode 328. 奇偶链表(双指针)
LeetCode 329. 矩阵中的最长递增路径(记忆化递归)
LeetCode 330. 按要求补齐数组(贪心)
LeetCode 331. 验证二叉树的前序序列化
LeetCode 332. 重新安排行程(欧拉路径)
LeetCode 333. 最大 BST 子树(递归)*
LeetCode 334. 递增的三元子序列
LeetCode 336. 回文对(哈希map)
LeetCode 337. 打家劫舍 III(记忆化+递归)
LeetCode 339. 嵌套列表权重和(DFS)
LeetCode 340. 至多包含 K 个不同字符的最长子串(滑动窗口)
LeetCode 341. 扁平化嵌套列表迭代器(双栈)
LeetCode 342. 4的幂(位运算)
LeetCode 343. 整数拆分(DP)
LeetCode 344. 反转字符串
LeetCode 345. 反转字符串中的元音字母
LeetCode 346. 数据流中的移动平均值(队列)
LeetCode 347. 前 K 个高频元素(哈希/优先队列)
LeetCode 348. 判定井字棋胜负(计数)
LeetCode 349. 两个数组的交集(哈希)
LeetCode 350. 两个数组的交集 II(哈希)
LeetCode 351. 安卓系统手势解锁(回溯)
LeetCode 352. 将数据流变为多个不相交区间(map二分查找)
LeetCode 353. 贪吃蛇(deque+set)
LeetCode 354. 俄罗斯套娃信封问题(最长上升子序 DP/二分查找)
LeetCode 355. 设计推特(哈希map+set)
LeetCode 356. 直线镜像
LeetCode 357. 计算各个位数不同的数字个数(DP)
LeetCode 358. K 距离间隔重排字符串(贪心+优先队列)
LeetCode 359. 日志速率限制器(哈希map)
LeetCode 360. 有序转化数组(抛物线对称轴)
LeetCode 361. 轰炸敌人(前缀和DP)
LeetCode 362. 敲击计数器(map)
LeetCode 363. 矩形区域不超过 K 的最大数值和(DP+set二分查找)
LeetCode 364. 加权嵌套序列和 II(重复叠加)
LeetCode 365. 水壶问题(最大公约数)
LeetCode 366. 寻找二叉树的叶子节点(上下翻转二叉树+BFS)
LeetCode 367. 有效的完全平方数(二分查找)
LeetCode 368. 最大整除子集(DP)
LeetCode 369. 给单链表加一(递归)
LeetCode 370. 区间加法(差分思想)
LeetCode 371. 两整数之和(位运算)
LeetCode 372. 超级次方(快速幂)
LeetCode 373. 查找和最小的K对数字(自定义优先队列BFS)
LeetCode 374. 猜数字大小(二分查找)
LeetCode 375. 猜数字大小 II(DP)
LeetCode 376. 摆动序列(贪心 & 动态规划)
LeetCode 377. 组合总和 Ⅳ(DP)
LeetCode 378. 有序矩阵中第K小的元素(二分查找)
LeetCode 379. 电话目录管理系统(哈希set)
LeetCode 380. 常数时间插入、删除和获取随机元素(哈希+vector)
LeetCode 381. O(1) 时间插入、删除和获取随机元素 - 允许重复(vector + 哈希)
LeetCode 382. 链表随机节点(概率)
LeetCode 383. 赎金信
LeetCode 384. 打乱数组(rand)
LeetCode 385. 迷你语法分析器(栈)
LeetCode 386. 字典序排数(DFS&循环)
LeetCode 387. 字符串中的第一个唯一字符
LeetCode 388. 文件的最长绝对路径(不用栈,前缀和)
LeetCode 389. 找不同(位运算)
LeetCode 390. 消除游戏(类似约瑟夫环,找映射规律)
LeetCode 391. 完美矩形(set检查顶点+面积检查)
LeetCode 392. 判断子序列(双指针&二分查找)
LeetCode 393. UTF-8 编码验证(位运算)
LeetCode 394. 字符串解码(栈)
LeetCode 395. 至少有K个重复字符的最长子串(分治)
LeetCode 396. 旋转函数(数学)
LeetCode 397. 整数替换(递归 & 贪心)
LeetCode 398. 随机数索引(概率)
LeetCode 399. 除法求值(图的DFS搜索)
LeetCode 400. 第N个数字(数学)
LeetCode 401. 二进制手表
LeetCode 402. 移掉K位数字(贪心,单调栈)
LeetCode 403. 青蛙过河(DP)
LeetCode 404. 左叶子之和(递归)
LeetCode 405. 数字转换为十六进制数
LeetCode 406. 根据身高重建队列(排序)
LeetCode 408. 有效单词缩写
LeetCode 409. 最长回文串(计数)
LeetCode 410. 分割数组的最大值(极小极大化 二分查找 / DP)
LeetCode 412. Fizz Buzz
LeetCode 413. 等差数列划分(DP)
LeetCode 414. 第三大的数
LeetCode 415. 字符串相加(大数加法)
LeetCode 416. 分割等和子集(动态规划)
LeetCode 417. 太平洋大西洋水流问题(BFS/DFS)
LeetCode 418. 屏幕可显示句子的数量(DP)*
LeetCode 419. 甲板上的战舰
LeetCode 421. 数组中两个数的最大异或值(Trie树)
LeetCode 422. 有效的单词方块
LeetCode 423. 从英文中重建数字(找规律)
LeetCode 424. 替换后的最长重复字符(滑动窗口)
LeetCode 425. 单词方块(Trie树+DFS)
LeetCode 426. 将二叉搜索树转化为排序的双向链表(BST中序循环遍历)
LeetCode 427. 建立四叉树(递归)
LeetCode 428. 序列化和反序列化 N 叉树(DFS)
LeetCode 429. N叉树的层序遍历(queue)
LeetCode 430. 扁平化多级双向链表(DFS)
LeetCode 431. 将 N 叉树编码为二叉树(递归/层序)
LeetCode 432. 全 O(1) 的数据结构(设计题)*
LeetCode 433. 最小基因变化(广度优先搜索)
LeetCode 434. 字符串中的单词数
LeetCode 435. 无重叠区间(贪心/动态规划)
LeetCode 436. 寻找右区间(二分查找)
LeetCode 437. 路径总和 III(双重递归)
LeetCode 438. 找到字符串中所有字母异位词(滑动窗口)
LeetCode 439. 三元表达式解析器
LeetCode 441. 排列硬币(数学解方程)
LeetCode 442. 数组中重复的数据
LeetCode 443. 压缩字符串(双指针)
LeetCode 444. 序列重建(拓扑排序)
LeetCode 445. 两数相加 II(链表大数加法)
LeetCode 447. 回旋镖的数量(哈希map+组合数)
LeetCode 448. 找到所有数组中消失的数字
LeetCode 450. 删除二叉搜索树中的节点
LeetCode 451. 根据字符出现频率排序(map+优先队列)
LeetCode 452. 用最少数量的箭打破气球(贪心)
LeetCode 453. 最小移动次数使数组元素相等(数学)
LeetCode 454. 四数相加 II(哈希)
LeetCode 455. 分发饼干(贪心)
LeetCode 456. 132模式(逆序遍历+单调栈)
LeetCode 457. 环形数组循环(暴力+快慢指针)
LeetCode 459. 重复的子字符串(数学)
LeetCode 460. LFU缓存(哈希双链表)
LeetCode 461. 汉明距离(异或^ 与&)
LeetCode 462. 最少移动次数使数组元素相等 II(数学)
LeetCode 463. 岛屿的周长
LeetCode 464. 我能赢吗(状态压缩+记忆化递归)
LeetCode 466. 统计重复个数(循环节)
LeetCode 467. 环绕字符串中唯一的子字符串(思维转换)
LeetCode 468. 验证IP地址
LeetCode 469. 凸多边形(向量叉积)
LeetCode 470. 用 Rand7() 实现 Rand10()(随机概率)
LeetCode 473. 火柴拼正方形(回溯)
LeetCode 474. 一和零(动态规划)
LeetCode 475. 供暖器(双指针&二分查找)
LeetCode 476. 数字的补数(移位 异或^)
LeetCode 477. 汉明距离总和(位运算)
LeetCode 478. 在圆内随机生成点(概率)
LeetCode 480. 滑动窗口中位数(大小堆升级版+set实现)
LeetCode 481. 神奇字符串(找规律)
LeetCode 482. 密钥格式化
LeetCode 483. 最小好进制(二分查找)
LeetCode 484. 寻找排列(找规律+贪心)
LeetCode 485. 最大连续1的个数
LeetCode 486. 预测赢家(博弈DP)
LeetCode 487. 最大连续1的个数 II(滑动窗口)
LeetCode 489. 扫地机器人(DFS)
LeetCode 490. 迷宫(BFS/DFS)
LeetCode 491. 递增子序列(回溯+判重剪枝)
LeetCode 492. 构造矩形
LeetCode 493. 翻转对(归并排序)
LeetCode 494. 目标和(DFS+DP)
LeetCode 495. 提莫攻击
LeetCode 496. 下一个更大元素 I(哈希)
LeetCode 497. 非重叠矩形中的随机点(前缀和+二分查找)
LeetCode 498. 对角线遍历
LeetCode 500. 键盘行
LeetCode 501. 二叉搜索树中的众数(中序遍历)
LeetCode 502. IPO(优先队列)
LeetCode 503. 下一个更大元素 II(栈)
LeetCode 504. 七进制数(进制转换)
LeetCode 505. 迷宫 II(BFS / Dijkstra 最短路径)
LeetCode 506. 相对名次(map)
LeetCode 507. 完美数
LeetCode 508. 出现次数最多的子树元素和(递归)
LeetCode 509. 斐波那契数
LeetCode 510. 二叉搜索树中的中序后继 II(查找右子树或者祖父节点)
LeetCode 513. 找树左下角的值(按层遍历 queue)
LeetCode 514. 自由之路(记忆化递归 / DP)
LeetCode 515. 在每个树行中找最大值(层序遍历)
LeetCode 516. 最长回文子序列(动态规划)
LeetCode 518. 零钱兑换 II(动态规划)
LeetCode 519. 随机翻转矩阵(哈希)
LeetCode 520. 检测大写字母
LeetCode 521. 最长特殊序列 Ⅰ
LeetCode 522. 最长特殊序列 II
LeetCode 523. 连续的子数组和(求余 哈希)
LeetCode 524. 通过删除字母匹配到字典里最长单词(双指针)
LeetCode 525. 连续数组(前缀和+哈希)
LeetCode 526. 优美的排列(回溯)
LeetCode 527. 单词缩写(Trie树)
LeetCode 528. 按权重随机选择(前缀和+二分查找)
LeetCode 529. 扫雷游戏(广度优先搜索BFS/深度优先搜索DFS)
LeetCode 530. 二叉搜索树的最小绝对差(中序遍历)
LeetCode 531. 孤独像素 I
LeetCode 532. 数组中的K-diff数对
LeetCode 533. 孤独像素 II
LeetCode 535. TinyURL 的加密与解密(哈希)
LeetCode 536. 从字符串生成二叉树(递归)
LeetCode 537. 复数乘法
LeetCode 538. 把二叉搜索树转换为累加树(逆中序 根右左)
LeetCode 539. 最小时间差(哈希)
LeetCode 540. 有序数组中的单一元素(位运算&二分查找)
LeetCode 541. 反转字符串 II
LeetCode 542. 01 矩阵(BFS && DP)
LeetCode 543. 二叉树的直径(DFS)
LeetCode 544. 输出比赛匹配对(NBA季后赛对阵图)
LeetCode 545. 二叉树的边界(前序+后序)*
LeetCode 546. 移除盒子(DP)*
LeetCode 547. 朋友圈(图的遍历BFS & DFS)
LeetCode 548. 将数组分割成和相等的子数组(哈希set)
LeetCode 549. 二叉树中最长的连续序列(树上DP)
LeetCode 551. 学生出勤记录 I
LeetCode 552. 学生出勤记录 II(动态规划)
LeetCode 553. 最优除法(数学)
LeetCode 554. 砖墙(map计数)
LeetCode 555. 分割连接字符串
LeetCode 556. 下一个更大元素 III
LeetCode 557. 反转字符串中的单词 III(栈)
LeetCode 558. 四叉树交集(递归)
LeetCode 559. N叉树的最大深度
LeetCode 560. 和为K的子数组(前缀和差分)
LeetCode 561. 数组拆分 I
LeetCode 562. 矩阵中最长的连续1线段(DP)
LeetCode 563. 二叉树的坡度(DFS)
LeetCode 565. 数组嵌套
LeetCode 566. 重塑矩阵
LeetCode 567. 字符串的排列(滑动窗口)
LeetCode 568. 最大休假天数(DP)
LeetCode 572. 另一个树的子树(二叉树迭代器)
LeetCode 573. 松鼠模拟(数学)*
LeetCode 575. 分糖果(set集合去重)
LeetCode 576. 出界的路径数(动态规划)
LeetCode 581. 最短无序连续子数组(排序&单调栈)
LeetCode 582. 杀死进程(图的遍历)
LeetCode 583. 两个字符串的删除操作(动态规划)
LeetCode 587. 安装栅栏 / LintCode 1152. 安装栅栏(凸包检测:排序+叉积正负判断+正反扫描+去重)
LeetCode 589. N叉树的前序遍历(前序遍历)
LeetCode 590. N叉树的后序遍历(后序遍历)
LeetCode 592. 分数加减运算(字符串+最大公约数)
LeetCode 593. 有效的正方形(数学)
LeetCode 594. 最长和谐子序列(map)
LeetCode 598. 范围求和 II
LeetCode 599. 两个列表的最小索引总和(哈希map)
LeetCode 604. 迭代压缩字符串
LeetCode 605. 种花问题
LeetCode 606. 根据二叉树创建字符串(递归)
LeetCode 609. 在系统中查找重复文件(哈希)
LeetCode 611. 有效三角形的个数(双指针)
LeetCode 616. 给字符串添加加粗标签(Trie树)
LeetCode 617. 合并二叉树
LeetCode 621. 任务调度器(贪心)
LeetCode 622. 设计循环队列
LeetCode 623. 在二叉树中增加一行(BFS/DFS)
LeetCode 624. 数组列表中的最大距离
LeetCode 625. 最小因式分解(贪心)
LeetCode 628. 三个数的最大乘积
LeetCode 629. K个逆序对数组(DP)
LeetCode 632. 最小区间(排序+滑动窗口)
LeetCode 633. 平方数之和(双指针)
LeetCode 634. 寻找数组的错位排列(DP)
LeetCode 635. 设计日志存储系统(map)
LeetCode 636. 函数的独占时间(栈)
LeetCode 637. 二叉树的层平均值(层次遍历queue)
LeetCode 638. 大礼包(无限背包DP)
LeetCode 640. 求解方程(字符串)
LeetCode 641. 设计循环双端队列
LeetCode 642. 设计搜索自动补全系统(Trie树)
LeetCode 643. 子数组最大平均数 I
LeetCode 644. 最大平均子段和 II(二分查找)*
LeetCode 645. 错误的集合
LeetCode 646. 最长数对链(区间 贪心)
LeetCode 647. 回文子串(DP)
LeetCode 648. 单词替换(Trie树)
LeetCode 649. Dota2 参议院(循环队列)
LeetCode 650. 只有两个键的键盘(DP)
LeetCode 651. 4键键盘(DP,Ctrl+CV)
LeetCode 652. 寻找重复的子树(DFS)
LeetCode 653. 两数之和 IV - 输入 BST(二叉搜索树迭代器&双指针)
LeetCode 654. 最大二叉树(递归)
LeetCode 655. 输出二叉树(二叉树高度&二叉树遍历)
LeetCode 656. 金币路径(DP)
LeetCode 657. 机器人能否返回原点
LeetCode 658. 找到 K 个最接近的元素(二分查找)
LeetCode 659. 分割数组为连续子序列(哈希)
LeetCode 660. 移除 9(9进制)
LeetCode 661. 图片平滑器
LeetCode 662. 二叉树最大宽度(递归)
LeetCode 663. 均匀树划分(树形DP)
LeetCode 664. 奇怪的打印机(区间DP)
LeetCode 665. 非递减数列(双指针)
LeetCode 666. 路径和 IV(树的遍历)
LeetCode 667. 优美的排列 II(找规律)
LeetCode 668. 乘法表中第k小的数(二分查找)
LeetCode 669. 修剪二叉搜索树
LeetCode 670. 最大交换
LeetCode 671. 二叉树中第二小的节点
LeetCode 672. 灯泡开关 Ⅱ(枚举)
LeetCode 673. 最长递增子序列的个数(DP)
LeetCode 674. 最长连续递增序列
LeetCode 676. 实现一个魔法字典(哈希)
LeetCode 677. 键值映射(Trie树)
LeetCode 678. 有效的括号字符串(栈)
LeetCode 679. 24 点游戏(回溯)
LeetCode 680. 验证回文字符串 Ⅱ
LeetCode 681. 最近时刻
LeetCode 682. 棒球比赛
LeetCode 683. K 个空花盆(set/滑动窗口)
LeetCode 684. 冗余连接(并查集)
LeetCode 685. 冗余连接 II(并查集)
LeetCode 686. 重复叠加字符串匹配
LeetCode 687. 最长同值路径(二叉树,递归)
LeetCode 688. “马”在棋盘上的概率(DP)
LeetCode 690. 员工的重要性(图的DFS&BFS)
LeetCode 692. 前K个高频单词(优先队列)
LeetCode 693. 交替位二进制数(位运算)
LeetCode 694. 不同岛屿的数量(BFS/DFS+set)
LeetCode 695. 岛屿的最大面积(图的BFS/DFS)
LeetCode 696. 计数二进制子串
LeetCode 697. 数组的度
LeetCode 698. 划分为k个相等的子集(回溯)
LeetCode 700. 二叉搜索树中的搜索
LeetCode 701. 二叉搜索树中的插入操作(二叉查找树/插入)
LeetCode 702. 搜索长度未知的有序数组(二分查找)
LeetCode 703. 数据流中的第K大元素(优先队列)
LeetCode 704. 二分查找
LeetCode 705. 设计哈希集合
LeetCode 706. 设计哈希映射
LeetCode 707. 设计链表(List)
LeetCode 708. 循环有序列表的插入
LeetCode 709. 转换成小写字母
LeetCode 712. 两个字符串的最小ASCII删除和(DP,类似编辑距离)
LeetCode 713. 乘积小于K的子数组(滑动窗口)
LeetCode 714. 买卖股票的最佳时机含手续费(DP)
LeetCode 716. 最大栈(双栈 / list+map)
LeetCode 717. 1比特与2比特字符
LeetCode 718. 最长重复子数组(DP)
LeetCode 720. 词典中最长的单词(Trie树)
LeetCode 721. 账户合并(并查集)
LeetCode 722. 删除注释(逻辑题)
LeetCode 723. 粉碎糖果(模拟)
LeetCode 724. 寻找数组的中心索引
LeetCode 725. 分隔链表
LeetCode 727. 最小窗口子序列(滑动窗口)
LeetCode 728. 自除数
LeetCode 729. 我的日程安排表 I(set 二分查找)
LeetCode 731. 我的日程安排表 II(set二分查找 / 差分思想)
LeetCode 732. 我的日程安排表 III(差分思想)
LeetCode 733. 图像渲染(DFS/BFS)
LeetCode 734. 句子相似性(哈希)
LeetCode 735. 行星碰撞(栈)
LeetCode 737. 句子相似性 II(并查集)
LeetCode 738. 单调递增的数字(贪心)
LeetCode 739. 每日温度(单调栈)
LeetCode 740. 删除与获得点数(排序+动态规划)
LeetCode 742. 二叉树最近的叶节点(建立父节点信息+BFS)
LeetCode 743. 网络延迟时间(最短路径)
LeetCode 744. 寻找比目标字母大的最小字母(二分查找)
LeetCode 746. 使用最小花费爬楼梯(DP)
LeetCode 747. 至少是其他数字两倍的最大数
LeetCode 748. 最短完整词
LeetCode 750. 角矩形的数量(DP)
LeetCode 751. IP 到 CIDR(贪心)
LeetCode 752. 打开转盘锁(图的BFS最短路径)
LeetCode 753. 破解保险箱(DFS)
LeetCode 754. 到达终点数字(数学推理)
LeetCode 755. 倒水(模拟)
LeetCode 756. 金字塔转换矩阵(回溯)
LeetCode 758. 字符串中的加粗单词(Trie树)
LeetCode 759. 员工空闲时间(排序)
LeetCode 760. 找出变位映射(哈希)
LeetCode 762. 二进制表示中质数个计算置位
LeetCode 763. 划分字母区间
LeetCode 764. 最大加号标志(DP)
LeetCode 765. 情侣牵手(贪心)
LeetCode 766. 托普利茨矩阵
LeetCode 767. 重构字符串(堆)
LeetCode 769. 最多能完成排序的块
LeetCode 771. 宝石与石头(哈希)
LeetCode 773. 滑动谜题(BFS 地图状态转换的最短距离)
LeetCode 774. 最小化去加油站的最大距离(极小极大化 二分查找)
LeetCode 775. 全局倒置与局部倒置(归并排序/二分查找/一次遍历)
LeetCode 776. 拆分二叉搜索树(DFS)*
LeetCode 777. 在LR字符串中交换相邻字符(双指针)
LeetCode 778. 水位上升的泳池中游泳(二分查找+dfs)
LeetCode 779. 第K个语法符号(找规律)
LeetCode 781. 森林中的兔子(哈希+贪心)
LeetCode 783. 二叉搜索树结点最小距离(中序遍历)
LeetCode 784. 字母大小写全排列(位运算&回溯)
LeetCode 785. 判断二分图(染色法)
LeetCode 787. K 站中转内最便宜的航班(Dijkstra最短路径 + 优先队列)
LeetCode 788. 旋转数字
LeetCode 789. 逃脱阻碍者(曼哈顿距离)
LeetCode 790. 多米诺和托米诺平铺(动态规划)
LeetCode 791. 自定义字符串排序(map)
LeetCode 792. 匹配子序列的单词数(二分查找)
LeetCode 793. 阶乘函数后K个零(二分查找)
LeetCode 794. 有效的井字游戏(分类讨论)
LeetCode 795. 区间子数组个数
LeetCode 796. 旋转字符串
LeetCode 797. 所有可能的路径(DFS)
LeetCode 799. 香槟塔(DP动态规划)
LeetCode 800. 相似 RGB 颜色
LeetCode 801. 使序列递增的最小交换次数(动态规划)
LeetCode 802. 找到最终的安全状态(逆向图+拓扑排序)
LeetCode 803. 打砖块(并查集)
LeetCode 804. 唯一摩尔斯密码词(哈希+set)
LeetCode 806. 写字符串需要的行数
LeetCode 807. 保持城市天际线
LeetCode 808. 分汤(动态规划)
LeetCode 809. 情感丰富的文字
LeetCode 810. 黑板异或游戏(博弈推理)
LeetCode 811. 子域名访问计数
LeetCode 812. 最大三角形面积(坐标面积公式)
LeetCode 813. 最大平均值和的分组(DP)
LeetCode 814. 二叉树剪枝(递归)
LeetCode 815. 公交路线(最少换乘,BFS)
LeetCode 816. 模糊坐标
LeetCode 817. 链表组件
LeetCode 819. 最常见的单词
LeetCode 820. 单词的压缩编码(后缀树)
LeetCode 821. 字符的最短距离
LeetCode 822. 翻转卡片游戏(哈希)
LeetCode 823. 带因子的二叉树(动态规划)
LeetCode 824. 山羊拉丁文
LeetCode 825. 适龄的朋友(计数排序+前缀和)
LeetCode 826. 安排工作以达到最大收益(map)
LeetCode 827. 最大人工岛(BFS+哈希)
LeetCode 828. 统计子串中的唯一字符(中心扩展)
LeetCode 829. 连续整数求和(数学)
LeetCode 830. 较大分组的位置
LeetCode 831. 隐藏个人信息
LeetCode 832. 翻转图像(异或^)
LeetCode 833. 字符串中的查找与替换(排序,replace)
LeetCode 834. 树中距离之和(树上DP)*
LeetCode 835. 图像重叠
LeetCode 836. 矩形重叠
LeetCode 837. 新21点(动态规划)
LeetCode 838. 推多米诺(模拟)
LeetCode 839. 相似字符串组(并查集)
LeetCode 840. 矩阵中的幻方(数学)
LeetCode 841. 钥匙和房间(DFS/BFS)
LeetCode 842. 将数组拆分成斐波那契序列(暴力查找)
LeetCode 844. 比较含退格的字符串
LeetCode 845. 数组中的最长山脉(中心扩展)
LeetCode 846. 一手顺子(map)
LeetCode 848. 字母移位(前缀和+取模)
LeetCode 849. 到最近的人的最大距离
LeetCode 851. 喧闹和富有(拓扑排序)
LeetCode 852. 山脉数组的峰顶索引(二分查找)
LeetCode 853. 车队(排序)
LeetCode 856. 括号的分数
LeetCode 858. 镜面反射(最小公倍数/最大公约数)
LeetCode 859. 亲密字符串
LeetCode 860. 柠檬水找零(贪心)
LeetCode 861. 翻转矩阵后的得分(贪心)
LeetCode 862. 和至少为 K 的最短子数组(前缀和+deque单调栈)
LeetCode 863. 二叉树中所有距离为 K 的结点(公共祖先/ DFS+BFS)
LeetCode 865. 具有所有最深结点的最小子树(递归)
LeetCode 866. 回文素数(除11外,偶数位的回文数都不是质数)
LeetCode 867. 转置矩阵
LeetCode 868. 二进制间距(位运算)
LeetCode 869. 重新排序得到 2 的幂(排序 & 全排列)
LeetCode 870. 优势洗牌(贪心 & 二分查找)
LeetCode 872. 叶子相似的树
LeetCode 873. 最长的斐波那契子序列的长度(动态规划)
LeetCode 874. 模拟行走机器人(set)
LeetCode 875. 爱吃香蕉的珂珂(二分查找)
LeetCode 876. 链表的中间结点(快慢指针)
LeetCode 877. 石子游戏(DP)
LeetCode 878. 第 N 个神奇数字(二分查找)
LeetCode 879. 盈利计划(动态规划)
LeetCode 880. 索引处的解码字符串(找规律)
LeetCode 881. 救生艇(贪心,双指针)
LeetCode 883. 三维形体投影面积
LeetCode 884. 两句话中的不常见单词
LeetCode 885. 螺旋矩阵 III
LeetCode 886. 可能的二分法(着色DFS/BFS/拓展并查集)
LeetCode 887. 鸡蛋掉落(DP,难)
LeetCode 888. 公平的糖果交换(哈希set)
LeetCode 889. 已知前序&后序 求二叉树(不唯一)
LeetCode 890. 查找和替换模式(哈希表)
LeetCode 891. 子序列宽度之和(数学)
LeetCode 892. 三维形体的表面积(数学)
LeetCode 893. 特殊等价字符串组
LeetCode 894. 所有可能的满二叉树(递归)
LeetCode 895. 最大频率栈(哈希+按频数存储)
LeetCode 896. 单调数列
LeetCode 897. 递增顺序查找树(中序遍历)
LeetCode 898. 子数组按位或操作(前缀和思想)
LeetCode 900. RLE 迭代器(模拟/二分查找)
LeetCode 901. 股票价格跨度(单调栈)
LeetCode 904. 水果成篮(滑动窗口)
LeetCode 905. 按奇偶排序数组
LeetCode 907. 子数组的最小值之和(单调栈)
LeetCode 908. 最小差值 I
LeetCode 909. 蛇梯棋(BFS)
LeetCode 910. 最小差值 II(贪心)
LeetCode 911. 在线选举(二分查找)
LeetCode 912. 排序数组(10种排序)
LeetCode 914. 卡牌分组(最大公约数)
LeetCode 915. 分割数组
LeetCode 916. 单词子集(计数)
LeetCode 917. 仅仅反转字母
LeetCode 918. 环形子数组的最大和(前缀和+单调队列)
LeetCode 919. 完全二叉树插入器(层序遍历&队列)
LeetCode 921. 使括号有效的最少添加(栈)
LeetCode 922. 按奇偶排序数组 II(双指针)
LeetCode 923. 三数之和的多种可能(双指针)
LeetCode 925. 长按键入(双指针)
LeetCode 926. 将字符串翻转到单调递增(动态规划)
LeetCode 927. 三等分(模拟)
LeetCode 929. 独特的电子邮件地址
LeetCode 930. 和相同的二元子数组(哈希+前缀和)
LeetCode 931. 下降路径最小和(动态规划)
LeetCode 932. 漂亮数组(分治递归/循环)
LeetCode 933. 最近的请求次数(queue)
LeetCode 934. 最短的桥(2次BFS)
LeetCode 935. 骑士拨号器(动态规划)
LeetCode 937. 重新排列日志文件(自定义排序)
LeetCode 938. 二叉搜索树的范围和(二叉树遍历+搜索剪枝)
LeetCode 939. 最小面积矩形(哈希)
LeetCode 940. 不同的子序列 II(动态规划)
LeetCode 941. 有效的山脉数组
LeetCode 942. 增减字符串匹配
LeetCode 944. 删列造序
LeetCode 945. 使数组唯一的最小增量(贪心)
LeetCode 946. 验证栈序列(栈)
LeetCode 947. 移除最多的同行或同列石头(并查集)
LeetCode 948. 令牌放置(贪心)
LeetCode 949. 给定数字能组成的最大时间(暴力)
LeetCode 950. 按递增顺序显示卡牌(deque)
LeetCode 951. 翻转等价二叉树(递归)
LeetCode 953. 验证外星语词典
LeetCode 954. 二倍数对数组(map计数)
LeetCode 956. 最高的广告牌(DP)
LeetCode 957. N 天后的牢房(查找循环节)
LeetCode 958. 二叉树的完全性检验(层序遍历)
LeetCode 959. 由斜杠划分区域(并查集)
LeetCode 961. 重复 N 次的元素
LeetCode 962. 最大宽度坡(单调栈)
LeetCode 963. 最小面积矩形 II
LeetCode 965. 单值二叉树
LeetCode 966. 元音拼写检查器(哈希)
LeetCode 967. 连续差相同的数字(BFS/DFS)
LeetCode 968. 监控二叉树(DFS)
LeetCode 969. 煎饼排序
LeetCode 970. 强整数
LeetCode 971. 翻转二叉树以匹配先序遍历(DFS)
LeetCode 973. 最接近原点的 K 个点(排序/优先队列/快排)
LeetCode 974. 和可被 K 整除的子数组(哈希map)
LeetCode 976. 三角形的最大周长
LeetCode 977. 有序数组的平方
LeetCode 978. 最长湍流子数组(DP)
LeetCode 979. 在二叉树中分配硬币(DFS)
LeetCode 980. 不同路径 III(DFS+回溯)
LeetCode 981. 基于时间的键值存储(哈希+二分查找)
LeetCode 982. 按位与为零的三元组(位运算+计数)
LeetCode 983. 最低票价(动态规划)
LeetCode 984. 不含 AAA 或 BBB 的字符串(贪心)
LeetCode 985. 查询后的偶数和
LeetCode 986. 区间列表的交集
LeetCode 987. 二叉树的垂序遍历(递归/循环)
LeetCode 988. 从叶结点开始的最小字符串(DFS)
LeetCode 989. 数组形式的整数加法
LeetCode 990. 等式方程的可满足性(并查集)
LeetCode 991. 坏了的计算器(逆向思考)
LeetCode 992. K 个不同整数的子数组(双指针)
LeetCode 993. 二叉树的堂兄弟节点(层序遍历)
LeetCode 994. 腐烂的橘子(图的BFS)
LeetCode 995. K 连续位的最小翻转次数(差分思想)
LeetCode 996. 正方形数组的数目(回溯+剪枝)
LeetCode 997. 找到小镇的法官(图的出度和入度)
LeetCode 998. 最大二叉树 II
LeetCode 999. 车的可用捕获量
LeetCode 1000. 合并石头的最低成本(区间DP)
LeetCode 1002. 查找常用字符(哈希)
LeetCode 1003. 检查替换后的词是否有效(栈)
LeetCode 1004. 最大连续1的个数 III(滑动窗口)
LeetCode 1005. K 次取反后最大化的数组和
LeetCode 1006. 笨阶乘
LeetCode 1007. 行相等的最少多米诺旋转
LeetCode 1008. 先序遍历构造二叉树(已知先序,求二叉搜索树)
LeetCode 1009. 十进制整数的反码(位运算)
LeetCode 1010. 总持续时间可被 60 整除的歌曲(哈希)
LeetCode 1011. 在 D 天内送达包裹的能力(二分查找)
LeetCode 1013. 将数组分成和相等的三个部分
LeetCode 1014. 最佳观光组合
LeetCode 1015. 可被 K 整除的最小整数(数学)
LeetCode 1016. 子串能表示从 1 到 N 数字的二进制串(bitset)
LeetCode 1017. 负二进制转换(负数进制转换)
LeetCode 1018. 可被 5 整除的二进制前缀
LeetCode 1019. 链表中的下一个更大节点(单调栈)
LeetCode 1020. 飞地的数量(图的BFS/DFS)
LeetCode 1021. 删除最外层的括号(栈)
LeetCode 1022. 从根到叶的二进制数之和(递归)
LeetCode 1023. 驼峰式匹配(暴力匹配)
LeetCode 1024. 视频拼接(动态规划/贪心)
LeetCode 1025. 除数博弈(动态规划)
LeetCode 1026. 节点与其祖先之间的最大差值(二叉树DFS)
LeetCode 1027. 最长等差数列(DP)
LeetCode 1028. 从先序遍历还原二叉树(栈)
LeetCode 1029. 两地调度(贪心)
LeetCode 1030. 距离顺序排列矩阵单元格(排序&Lambda表达式&BFS)
LeetCode 1031. 两个非重叠子数组的最大和(一次遍历,要复习)*
LeetCode 1033. 移动石子直到连续
LeetCode 1034. 边框着色(BFS/DFS)
LeetCode 1035. 不相交的线(最长公共子序列DP)
LeetCode 1037. 有效的回旋镖
LeetCode 1038. 从二叉搜索树到更大和树(逆中序-右根左-降序)
LeetCode 1039. 多边形三角剖分的最低得分(区间DP)
LeetCode 1041. 困于环中的机器人
LeetCode 1042. 不邻接植花(图的数据结构)
LeetCode 1043. 分隔数组以得到最大和(DP)
LeetCode 1046. 最后一块石头的重量(priority_queue 堆)
LeetCode 1047. 删除字符串中的所有相邻重复项(栈)
LeetCode 1048. 最长字符串链(哈希+DP)
LeetCode 1049. 最后一块石头的重量 II(DP)
LeetCode 1051. 高度检查器
LeetCode 1052. 爱生气的书店老板(滑动窗口)
LeetCode 1053. 交换一次的先前排列
LeetCode 1054. 距离相等的条形码(优先队列)
LeetCode 1055. 形成字符串的最短路径(贪心)
LeetCode 1056. 易混淆数(哈希)
LeetCode 1057. 校园自行车分配(map有序+贪心)
LeetCode 1058. 最小化舍入误差以满足目标(排序+贪心)
LeetCode 1059. 从始点到终点的所有路径(回溯)
LeetCode 1060. 有序数组中的缺失元素(二分查找)
LeetCode 1061. 按字典序排列最小的等效字符串(并查集)
LeetCode 1062. 最长重复子串(二分查找)
LeetCode 1063. 有效子数组的数目(单调栈)
LeetCode 1064. 不动点(二分查找)
LeetCode 1065. 字符串的索引对
LeetCode 1066. 校园自行车分配 II(状态压缩DP)
LeetCode 1067. 范围内的数字计数
LeetCode 1071. 字符串的最大公因子(字符串的最大公约数)
LeetCode 1072. 按列翻转得到最大值等行数(查找相同的模式,哈希计数)
LeetCode 1073. 负二进制数相加(负数进制)
LeetCode 1074. 元素和为目标值的子矩阵数量(2d前缀和+哈希)
LeetCode 1078. Bigram 分词
LeetCode 1079. 活字印刷(全排列回溯)
LeetCode 1080. 根到叶路径上的不足节点(递归)
LeetCode 1081. 不同字符的最小子序列(单调栈)
LeetCode 1085. 最小元素各数位之和
LeetCode 1086. 前五科的均分(map + 优先队列)
LeetCode 1087. 字母切换(回溯)
LeetCode 1088. 易混淆数 II(回溯/BFS)
LeetCode 1089. 复写零
LeetCode 1090. 受标签影响的最大值(优先队列)
LeetCode 1091. 二进制矩阵中的最短路径(BFS)
LeetCode 1093. 大样本统计
LeetCode 1094. 拼车
LeetCode 1095. 山脉数组中查找目标值(二分查找)
LeetCode 1099. 小于 K 的两数之和(二分查找)
LeetCode 1100. 长度为 K 的无重复字符子串(滑动窗口)
LeetCode 1101. 彼此熟识的最早时间(排序+并查集)
LeetCode 1102. 得分最高的路径(优先队列BFS/极大极小化 二分查找)
LeetCode 1103. 分糖果 II
LeetCode 1104. 二叉树寻路(数学&位运算)
LeetCode 1105. 填充书架(DP)
LeetCode 1108. IP 地址无效化
LeetCode 1109. 航班预订统计(差分思想)
LeetCode 1110. 删点成林(二叉树递归)
LeetCode 1111. 有效括号的嵌套深度(奇偶分离)
LeetCode 1118. 一月有多少天(闰年判断)
LeetCode 1119. 删去字符串中的元音
LeetCode 1120. 子树的最大平均值(DFS自底向上)
LeetCode 1121. 将数组分成几个递增序列
LeetCode 1122. 数组的相对排序
LeetCode 1123. 最深叶节点的最近公共祖先(递归比较子树高度)
LeetCode 1124. 表现良好的最长时间段(单调栈/哈希)
LeetCode 1128. 等价多米诺骨牌对的数量(哈希)
LeetCode 1129. 颜色交替的最短路径(BFS)
LeetCode 1130. 叶值的最小代价生成树(区间DP/单调栈贪心)
LeetCode 1131. 绝对值表达式的最大值(数学 绝对值展开)
LeetCode 1133. 最大唯一数
LeetCode 1134. 阿姆斯特朗数
LeetCode 1135. 最低成本联通所有城市(最小生成树+排序+并查集)
LeetCode 1136. 平行课程(拓扑排序)
LeetCode 1137. 第 N 个泰波那契数
LeetCode 1138. 字母板上的路径
LeetCode 1139. 最大的以 1 为边界的正方形(DP)
LeetCode 1140. 石子游戏 II(DP)*
LeetCode 1143. 最长公共子序列(动态规划)
LeetCode 1144. 递减元素使数组呈锯齿状(奇偶分别遍历)
LeetCode 1145. 二叉树着色游戏(计算节点个数)
LeetCode 1146. 快照数组(哈希map + 有序map)
LeetCode 1147. 段式回文(贪心)
LeetCode 1150. 检查一个数是否在数组中占绝大多数(二分查找)
LeetCode 1151. 最少交换次数来组合所有的 1(滑动窗口)
LeetCode 1152. 用户网站访问行为分析
LeetCode 1153. 字符串转化(哈希)
LeetCode 1154. 一年中的第几天
LeetCode 1155. 掷骰子的N种方法(DP)
LeetCode 1156. 单字符重复子串的最大长度
LeetCode 1160. 拼写单词
LeetCode 1161. 最大层内元素和(层序遍历)
LeetCode 1162. 地图分析(BFS)
LeetCode 1165. 单行键盘(哈希)
LeetCode 1166. 设计文件系统(哈希map)
LeetCode 1167. 连接棒材的最低费用(优先队列+贪心)
LeetCode 1169. 查询无效交易
LeetCode 1170. 比较字符串最小字母出现频次
LeetCode 1171. 从链表中删去总和值为零的连续节点(哈希表)
LeetCode 1172. 餐盘栈(栈 + set)
LeetCode 1175. 质数排列
LeetCode 1176. 健身计划评估(滑动窗口)
LeetCode 1177. 构建回文串检测(前缀和)
LeetCode 1178. 猜字谜(状态压缩+枚举二进制子集+哈希)
LeetCode 1180. 统计只含单一字母的子串
LeetCode 1181. 前后拼接(哈希map)
LeetCode 1182. 与目标颜色间的最短距离(二分查找/DP)
LeetCode 1184. 公交站间的距离
LeetCode 1185. 一周中的第几天
LeetCode 1186. 删除一次得到子数组最大和(DP)
LeetCode 1187. 使数组严格递增(DP)*
LeetCode 1189. “气球” 的最大数量
LeetCode 1190. 反转每对括号间的子串(栈)
LeetCode 1191. K 次串联后最大子数组之和(前缀和+分类讨论)
LeetCode 1196. 最多可以买到的苹果数量(贪心)
LeetCode 1197. 进击的骑士(BFS)
LeetCode 1198. 找出所有行中最小公共元素(二分/合并有序链表)
LeetCode 1199. 建造街区的最短时间(优先队列贪心)
LeetCode 1200. 最小绝对差
LeetCode 1201. 丑数 III(最小公倍数+二分查找)
LeetCode 1202. 交换字符串中的元素(并查集)
LeetCode 1203. 项目管理(两次拓扑排序)
LeetCode 1207. 独一无二的出现次数
LeetCode 1208. 尽可能使字符串相等(滑动窗口)
LeetCode 1209. 删除字符串中的所有相邻重复项 II(栈)
LeetCode 1210. 穿过迷宫的最少移动次数(状态压缩BFS)
LeetCode 1213. 三个有序数组的交集(哈希set)
LeetCode 1214. 查找两棵二叉搜索树之和(二叉树迭代器+双指针)
LeetCode 1215. 步进数(BFS/DFS)
LeetCode 1216. 验证回文字符串 III(DP)
LeetCode 1217. 玩筹码(脑筋急转弯)
LeetCode 1218. 最长定差子序列(哈希map)
LeetCode 1219. 黄金矿工(回溯)
LeetCode 1220. 统计元音字母序列的数目(DP)
LeetCode 1221. 分割平衡字符串
LeetCode 1222. 可以攻击国王的皇后(set)
LeetCode 1223. 掷骰子模拟(DP)
LeetCode 1224. 最大相等频率(哈希)
LeetCode 1227. 飞机座位分配概率(DP+数学归纳法)
LeetCode 1228. 等差数列中缺失的数字
LeetCode 1229. 安排会议日程(双指针)
LeetCode 1230. 抛掷硬币(DP)
LeetCode 1231. 分享巧克力(极小极大化 二分查找)
LeetCode 1232. 缀点成线
LeetCode 1233. 删除子文件夹
LeetCode 1234. 替换子串得到平衡字符串(滑动窗口)
LeetCode 1235. 规划兼职工作(动态规划+二分查找)
LeetCode 1236. 网络爬虫(BFS/DFS)
LeetCode 1237. 找出给定方程的正整数解
LeetCode 1238. 循环码排列(格雷编码+旋转数组)
LeetCode 1239. 串联字符串的最大长度(回溯/动态规划)
LeetCode 1243. 数组变换
LeetCode 1244. 力扣排行榜(map+multiset)
LeetCode 1245. 树的直径(图的最大直径结论)
LeetCode 1246. 删除回文子数组(区间DP)
LeetCode 1247. 交换字符使得字符串相同
LeetCode 1248. 统计「优美子数组」(要复习)
LeetCode 1249. 移除无效的括号(栈+set / deque)
LeetCode 1250. 检查「好数组」(set / 最大公约数)
LeetCode 1252. 奇数值单元格的数目
LeetCode 1253. 重构 2 行二进制矩阵(贪心)
LeetCode 1254. 统计封闭岛屿的数目(图的BFS & DFS)
LeetCode 1255. 得分最高的单词集合(回溯)
LeetCode 1256. 加密数字(bitset)
LeetCode 1257. 最小公共区域(最小公共祖先)
LeetCode 1258. 近义词句子(哈希+并查集+排序+回溯)
LeetCode 1260. 二维网格迁移(二维转一维)
LeetCode 1261. 在受污染的二叉树中查找元素(树&哈希)
LeetCode 1262. 可被三整除的最大和(DP)
LeetCode 1263. 推箱子(BFS+DFS / 自定义哈希set)
LeetCode 1265. 逆序打印不可变链表(递归)
LeetCode 1266. 访问所有点的最小时间(数学)
LeetCode 1267. 统计参与通信的服务器(计数)
LeetCode 1268. 搜索推荐系统(Trie树/multiset)
LeetCode 1269. 停在原地的方案数(DP)
LeetCode 1271. 十六进制魔术数字(进制转换)
LeetCode 1272. 删除区间
LeetCode 1273. 删除树节点(拓扑排序/DFS)
LeetCode 1274. 矩形内船只的数目(分治)
LeetCode 1275. 找出井字棋的获胜者(位运算)
LeetCode 1276. 不浪费原料的汉堡制作方案(解方程)
LeetCode 1277. 统计全为 1 的正方形子矩阵(DP)
LeetCode 1278. 分割回文串 III(区间DP)
LeetCode 1281. 整数的各位积和之差
LeetCode 1282. 用户分组(桶排序思想)
LeetCode 1283. 使结果不超过阈值的最小除数(二分查找)
LeetCode 1284. 转化为全零矩阵的最少反转次数(BFS & 矩阵状态编码解码)
LeetCode 1286. 字母组合迭代器(回溯/位运算)
LeetCode 1287. 有序数组中出现次数超过25%的元素
LeetCode 1288. 删除被覆盖区间(lambda排序)
LeetCode 1289. 下降路径最小和 II(DP)
LeetCode 1290. 二进制链表转整数
LeetCode 1291. 顺次数(模拟)
LeetCode 1292. 元素和小于等于阈值的正方形的最大边长(DP)
LeetCode 1293. 网格中的最短路径(DP/BFS)
LeetCode 1295. 统计位数为偶数的数字
LeetCode 1296. 划分数组为连续数字的集合(map模拟)
LeetCode 1297. 子串的最大出现次数
LeetCode 1298. 你能从盒子里获得的最大糖果数(BFS)
LeetCode 1299. 将每个元素替换为右侧最大元素
LeetCode 1300. 转变数组后最接近目标值的数组和(二分查找)
LeetCode 1301. 最大得分的路径数目
LeetCode 1302. 层数最深叶子节点的和
LeetCode 1304. 和为零的N个唯一整数
LeetCode 1305. 两棵二叉搜索树中的所有元素(二叉树迭代器)
LeetCode 1306. 跳跃游戏 III(广度优先搜索BFS)
LeetCode 1309. 解码字母到整数映射
LeetCode 1310. 子数组异或查询(前缀异或)
LeetCode 1311. 获取你好友已观看的视频(BFS+哈希map+vector排序)
LeetCode 1312. 让字符串成为回文串的最少插入次数(区间DP)
LeetCode 1313. 解压缩编码列表
LeetCode 1314. 矩阵区域和
LeetCode 1315. 祖父节点值为偶数的节点和
LeetCode 1316. 不同的循环子字符串
LeetCode 1317. 将整数转换为两个无零整数的和
LeetCode 1318. 或运算的最小翻转次数(位运算)
LeetCode 1319. 连通网络的操作次数(BFS/DFS/并查集)
LeetCode 1320. 二指输入的的最小距离(动态规划)
LeetCode 1323. 6 和 9 组成的最大数字
LeetCode 1324. 竖直打印单词
LeetCode 1325. 删除给定值的叶子节点(递归)
LeetCode 1328. 破坏回文串
LeetCode 1329. 将矩阵按对角线排序
LeetCode 1330. 翻转子数组得到最大的数组值
LeetCode 1331. 数组序号转换
LeetCode 1332. 删除回文子序列
LeetCode 1333. 餐厅过滤器(Lambda排序)
LeetCode 1334. 阈值距离内邻居最少的城市(最短路径Dijkstra)
LeetCode 1335. 工作计划的最低难度(DP)
LeetCode 1337. 方阵中战斗力最弱的 K 行(优先队列)
LeetCode 1338. 数组大小减半
LeetCode 1339. 分裂二叉树的最大乘积(DP)
LeetCode 1340. 跳跃游戏 V(DP)
LeetCode 1342. 将数字变成 0 的操作次数
LeetCode 1343. 大小为 K 且平均值大于等于阈值的子数组数目(双指针)
LeetCode 1344. 时钟指针的夹角
LeetCode 1345. 跳跃游戏 IV (BFS 最短路径)
LeetCode 1346. 检查整数及其两倍数是否存在(哈希)
LeetCode 1347. 制造字母异位词的最小步骤数
LeetCode 1348. 推文计数(哈希map+set)
LeetCode 1351. 统计有序矩阵中的负数
LeetCode 1352. 最后 K 个数的乘积
LeetCode 1353. 最多可以参加的会议数目(排序+贪心,优先队列,难)
LeetCode 1354. 多次求和构造目标数组(优先队列+逆向思考)
LeetCode 1356. 根据数字二进制下 1 的数目排序(自定义lambda排序)
LeetCode 1357. 每隔 n 个顾客打折(哈希)
LeetCode 1358. 包含所有三种字符的子字符串数目(二分查找)
LeetCode 1359. 有效的快递序列数目(动态规划)
LeetCode 1360. 日期之间隔几天(闰年判断)
LeetCode 1361. 验证二叉树(图的出入度)
LeetCode 1362. 最接近的因数
LeetCode 1363. 形成三的最大倍数(贪心,难)
LeetCode 1365. 有多少小于当前数字的数字(排序)
LeetCode 1366. 通过投票对团队排名(自定义排序)
LeetCode 1367. 二叉树中的列表(双重递归)
LeetCode 1368. 使网格图至少有一条有效路径的最小代价(BFS最短路径,难)
LeetCode 1370. 上升下降字符串
LeetCode 1371. 每个元音包含偶数次的最长子字符串(异或前缀值)
LeetCode 1372. 二叉树中的最长交错路径(递归,注意不要超时)
LeetCode 1373. 二叉搜索子树的最大键值和(自底向上DP,返回vector多变量)
LeetCode 1374. 生成每种字符都是奇数个的字符串
LeetCode 1375. 灯泡开关 III
LeetCode 1376. 通知所有员工所需的时间(DFS)
LeetCode 1377. T 秒后青蛙的位置(BFS)
LeetCode 1379. 找出克隆二叉树中的相同节点(二叉树遍历)
LeetCode 1380. 矩阵中的幸运数(set)
LeetCode 1381. 设计一个支持增量操作的栈(deque/数组)
LeetCode 1382. 将二叉搜索树变平衡(中序遍历+二分递归)
LeetCode 1383. 最大的团队表现值(贪心,优先队列,难)
LeetCode 1385. 两个数组间的距离值
LeetCode 1386. 安排电影院座位(map+bitset)
LeetCode 1387. 将整数按权重排序(自定义排序)
LeetCode 1388. 3n 块披萨 hard(动态规划)
LeetCode 1389. 按既定顺序创建目标数组
LeetCode 1390. 四因数
LeetCode 1391. 检查网格中是否存在有效路径(BFS)
LeetCode 1392. 最长快乐前缀(KMP)
LeetCode 1394. 找出数组中的幸运数(map计数)
LeetCode 1395. 统计作战单位数(蛮力法)
LeetCode 1396. 设计地铁系统(map/unordered_map)
LeetCode 1399. 统计最大组的数目
LeetCode 1400. 构造 K 个回文字符串(脑洞题)
LeetCode 1401. 圆和矩形是否有重叠(数学)
LeetCode 1402. 做菜顺序(贪心+动态规划)
LeetCode 1403. 非递增顺序的最小子序列(排序)
LeetCode 1404. 将二进制表示减到 1 的步骤数(字符串加法)
LeetCode 1405. 最长快乐字符串(贪心)
LeetCode 1406. 石子游戏 III(DP)
LeetCode 1408. 数组中的字符串匹配(暴力查找)
LeetCode 1409. 查询带键的排列(map模拟)
LeetCode 1410. HTML 实体解析器(哈希map)
LeetCode 1411. 给 N x 3 网格图涂色的方案数(数学)
LeetCode 1413. 逐步求和得到正数的最小值
LeetCode 1414. 和为 K 的最少斐波那契数字数目(set二分查找+贪心)
LeetCode 1415. 长度为 n 的开心字符串中字典序第 k 小的字符串(DFS)
LeetCode 1417. 重新格式化字符串
LeetCode 1418. 点菜展示表(哈希map)
LeetCode 1419. 数青蛙(脑洞题)
LeetCode 1422. 分割字符串的最大得分(前缀和)
LeetCode 1423. 可获得的最大点数(前缀和)
LeetCode 1424. 对角线遍历 II(哈希分组+排序)
LeetCode 1425. 带限制的子序列和(DP+单调栈)
LeetCode 1426. 数元素(哈希set)
LeetCode 1427. 字符串的左右移
LeetCode 1428. 至少有一个 1 的最左端列(二分查找)
LeetCode 1429. 第一个唯一数字(map+queue)
LeetCode 1430. 判断给定的序列是否是二叉树从根到叶的路径(递归)
LeetCode 1431. 拥有最多糖果的孩子
LeetCode 1432. 改变一个整数能得到的最大差值
LeetCode 1433. 检查一个字符串是否可以打破另一个字符串(排序)
LeetCode 1434. 每个人戴不同帽子的方案数(状态压缩+DP)
LeetCode 1436. 旅行终点站(图的出入度)
LeetCode 1437. 是否所有 1 都至少相隔 k 个元素
LeetCode 1438. 绝对差不超过限制的最长连续子数组(滑动窗口+map)
LeetCode 1439. 有序矩阵中的第 k 个最小数组和(优先队列+DP)
LeetCode 1441. 用栈操作构建数组
LeetCode 1442. 形成两个异或相等数组的三元组数目(前缀异或)
LeetCode 1443. 收集树上所有苹果的最少时间(自底向上DFS)
LeetCode 1444. 切披萨的方案数(DP)
LeetCode 1446. 连续字符
LeetCode 1447. 最简分数(公约数为1)
LeetCode 1448. 统计二叉树中好节点的数目(递归)
LeetCode 1449. 数位成本和为目标值的最大数字(DP)
LeetCode 1450. 在既定时间做作业的学生人数
LeetCode 1451. 重新排列句子中的单词(桶排序)
LeetCode 1452. 收藏清单(std::includes判断子集)
LeetCode 1453. 圆形靶内的最大飞镖数量(几何题)
LeetCode 1455. 检查单词是否为句中其他单词的前缀
LeetCode 1456. 定长子串中元音的最大数目(滑动窗口)
LeetCode 1457. 二叉树中的伪回文路径(位运算+递归)
LeetCode 1458. 两个子序列的最大点积(动态规划,类似编辑距离)
LeetCode 1460. 通过翻转子数组使两个数组相等
LeetCode 1461. 检查一个字符串是否包含所有长度为 K 的二进制子串(滑动窗口)
LeetCode 1462. 课程安排 IV(Floyd-Warshall弗洛伊德最短路径)
LeetCode 1463. 摘樱桃 II (DP)
LeetCode 1464. 数组中两元素的最大乘积
LeetCode 1465. 切割后面积最大的蛋糕
LeetCode 1466. 重新规划路线(DFS/BFS)
LeetCode 1469. 寻找所有的独生节点
LeetCode 1470. 重新排列数组
LeetCode 1471. 数组中的 k 个最强值(排序)
LeetCode 1472. 设计浏览器历史记录(双栈)
LeetCode 1473. 给房子涂色 III(DP)
LeetCode 1474. 删除链表 M 个节点之后的 N 个节点
LeetCode 1475. 商品折扣后的最终价格(单调栈)
LeetCode 1476. 子矩形查询
LeetCode 1477. 找两个和为目标值且不重叠的子数组(滑动窗口/正反前缀和)
LeetCode 1480. 一维数组的动态和(前缀和)
LeetCode 1481. 不同整数的最少数目(计数+排序+贪心)
LeetCode 1482. 制作 m 束花所需的最少天数(二分查找)
LeetCode 1484. 克隆含随机指针的二叉树(哈希/递归)
LeetCode 1486. 数组异或操作
LeetCode 1487. 保证文件名唯一(哈希map)
LeetCode 1488. 避免洪水泛滥(哈希map+deque)
LeetCode 1489. 找到最小生成树里的关键边和伪关键边(并查集+kruskal最小生成树)
LeetCode 1490. 克隆 N 叉树(DFS/BFS)
LeetCode 1491. 去掉最低工资和最高工资后的工资平均值
LeetCode 1492. n 的第 k 个因子
LeetCode 1493. 删掉一个元素以后全为 1 的最长子数组(滑动窗口)
LeetCode 1496. 判断路径是否相交(set)
LeetCode 1497. 检查数组对是否可以被 k 整除(余数配对)
LeetCode 1498. 满足条件的子序列数目(排序+二分查找+快速幂)
LeetCode 1500. Design a File Sharing System(哈希map+优先队列)
LeetCode 1502. 判断能否形成等差数列
LeetCode 1503. 所有蚂蚁掉下来前的最后一刻(脑筋急转弯)
LeetCode 1504. 统计全 1 子矩形(记录左侧的连续1的个数)
LeetCode 1506. Find Root of N-Ary Tree(异或)
LeetCode 1507. 转变日期格式
LeetCode 1508. 子数组和排序后的区间和
LeetCode 1509. 三次操作后最大值与最小值的最小差
LeetCode 1510. 石子游戏 IV(博弈DP)
LeetCode 1512. 好数对的数目
LeetCode 1513. 仅含 1 的子串数
LeetCode 1514. 概率最大的路径(Dijkstra+优先队列优化)
LeetCode 1515. 服务中心的最佳位置(最优化退火迭代)
LeetCode 1516. Move Sub-Tree of N-Ary Tree(DFS)
LeetCode 1518. 换酒问题
LeetCode 1519. 子树中标签相同的节点数(DFS)
LeetCode 1520. 最多的不重叠子字符串(贪心)
LeetCode 1521. 找到最接近目标值的函数值(位运算)
LeetCode 1522. Diameter of N-Ary Tree(递归)
LeetCode 1523. 在区间范围内统计奇数数目
LeetCode 1524. 和为奇数的子数组数目
LeetCode 1525. 字符串的好分割数目(双指针)
LeetCode 1526. 形成目标数组的子数组最少增加次数
LeetCode 1528. 重新排列字符串
LeetCode 1529. 灯泡开关 IV
LeetCode 1530. 好叶子节点对的数量(自底向上DFS)
LeetCode 1533. Find the Index of the Large Integer(二分查找)
LeetCode 1534. 统计好三元组
LeetCode 1535. 找出数组游戏的赢家
LeetCode 1536. 排布二进制网格的最少交换次数
LeetCode 1537. 最大得分(切片取出局部最大值)
LeetCode 1538. Guess the Majority in a Hidden Array
LeetCode 1539. 第 k 个缺失的正整数
LeetCode 1540. K 次操作转变字符串(计数)
LeetCode 1541. 平衡括号字符串的最少插入次数(栈括号匹配)
LeetCode 1542. 找出最长的超赞子字符串(状态压缩+哈希)
LeetCode 1544. 整理字符串(栈)
LeetCode 1545. 找出第 N 个二进制字符串中的第 K 位(递归)
LeetCode 1546. 和为目标值的最大数目不重叠非空子数组数目(哈希)
LeetCode 1547. 切棍子的最小成本(区间DP)
LeetCode 1548. The Most Similar Path in a Graph(动态规划)
LeetCode 1550. 存在连续三个奇数的数组
LeetCode 1551. 使数组中所有元素相等的最小操作数(等差数列)
LeetCode 1552. 两球之间的磁力(极小极大化 二分查找)
LeetCode 1553. 吃掉 N 个橘子的最少天数(BFS)
LeetCode 1554. 只有一个不同字符的字符串(枚举)
LeetCode 1556. 千位分隔数
LeetCode 1557. 可以到达所有点的最少点数目(图的入度)
LeetCode 1558. 得到目标数组的最少函数调用次数
LeetCode 1559. 二维网格图中探测环(DFS)
LeetCode 1560. 圆形赛道上经过次数最多的扇区
LeetCode 1561. 你可以获得的最大硬币数目
LeetCode 1562. 查找大小为 M 的最新分组
LeetCode 1563. 石子游戏 V(DP)
LeetCode 1564. 把箱子放进仓库里 I(排序)
LeetCode 1566. 重复至少 K 次且长度为 M 的模式
LeetCode 1567. 乘积为正数的最长子数组长度
LeetCode 1568. 使陆地分离的最少天数(DFS)
LeetCode 1569. 将子数组重新排序得到同一个二叉查找树的方案数(DP)
LeetCode 1570. 两个稀疏向量的点积(哈希)
LeetCode 1572. 矩阵对角线元素的和
LeetCode 1573. 分割字符串的方案数
LeetCode 1574. 删除最短的子数组使剩余数组有序
LeetCode 1575. 统计所有可行路径(DP)
LeetCode 1576. 替换所有的问号
LeetCode 1577. 数的平方等于两数乘积的方法数(双指针)
LeetCode 1578. 避免重复字母的最小删除成本
LeetCode 1579. 保证图可完全遍历(并查集)
LeetCode 1580. 把箱子放进仓库里 II(排序)
LeetCode 1582. 二进制矩阵中的特殊位置
LeetCode 1583. 统计不开心的朋友
LeetCode 1584. 连接所有点的最小费用(最小生成树)
LeetCode 1585. 检查字符串是否可以通过排序子字符串得到另一个字符串(队列)
LeetCode 1586. 二叉搜索树迭代器 II(数组+栈)
LeetCode 1588. 所有奇数长度子数组的和
LeetCode 1589. 所有排列中的最大和(差分+前缀和)
LeetCode 1590. 使数组和能被 P 整除(哈希+前缀和)
LeetCode 1592. 重新排列单词间的空格
LeetCode 1593. 拆分字符串使唯一子字符串的数目最大(回溯)
LeetCode 1594. 矩阵的最大非负积(DP)
LeetCode 1598. 文件夹操作日志搜集器
LeetCode 1599. 经营摩天轮的最大利润(模拟)
LeetCode 1600. 皇位继承顺序(图的深度优先遍历)
LeetCode 1601. 最多可达成的换楼请求数目(回溯+剪枝)
LeetCode 1602. 找到二叉树中最近的右侧节点(BFS)
LeetCode 1603. 设计停车系统
LeetCode 1604. 警告一小时内使用相同员工卡大于等于三次的人(map+set)
LeetCode 1605. 给定行和列的和求可行矩阵(贪心)
LeetCode 1606. 找到处理最多请求的服务器(优先队列+set)
LeetCode 1608. 特殊数组的特征值
LeetCode 1609. 奇偶树(层序遍历)
LeetCode 1610. 可见点的最大数目(atan2函数求夹角)
LeetCode 1614. 括号的最大嵌套深度
LeetCode 1615. 最大网络秩(出入度)
LeetCode 1616. 分割两个字符串得到回文串
LeetCode 1617. 统计子树中城市之间最大距离(枚举所有可能+图的最大直径)
LeetCode 1618. 找出适应屏幕的最大字号(二分查找)
LeetCode 1619. 删除某些元素后的数组均值
LeetCode 1620. 网络信号最好的坐标
LeetCode 1624. 两个相同字符之间的最长子字符串
LeetCode 1625. 执行操作后字典序最小的字符串(BFS)
LeetCode 1626. 无矛盾的最佳球队(最大上升子序DP)
LeetCode 1629. 按键持续时间最长的键
LeetCode 1630. 等差子数组
LeetCode 1631. 最小体力消耗路径(DFS + 二分查找)
LeetCode 1634. 求两个多项式链表的和
LeetCode 1636. 按照频率将数组升序排序(哈希+排序)
LeetCode 1637. 两点之间不包含任何点的最宽垂直面积
LeetCode 1638. 统计只差一个字符的子串数目(DP)
LeetCode 1640. 能否连接形成数组(哈希)
LeetCode 1641. 统计字典序元音字符串的数目(DP)
LeetCode 1642. 可以到达的最远建筑(二分查找 / 优先队列贪心)
LeetCode 1644. 二叉树的最近公共祖先 II
LeetCode 1646. 获取生成数组中的最大值
LeetCode 1647. 字符频次唯一的最小删除次数(贪心)
LeetCode 1650. 二叉树的最近公共祖先 III(哈希)
LeetCode 1652. 拆炸弹(前缀和)
LeetCode 1653. 使字符串平衡的最少删除次数(DP)
LeetCode 1654. 到家的最少跳跃次数(BFS)
LeetCode 1655. 分配重复整数(回溯)
LeetCode 1656. 设计有序流(数组)
LeetCode 1657. 确定两个字符串是否接近
LeetCode 1658. 将 x 减到 0 的最小操作数(哈希)
LeetCode 1660. 纠正二叉树(BFS)
LeetCode 1662. 检查两个字符串数组是否相等
LeetCode 1663. 具有给定数值的最小字符串(贪心)
LeetCode 1664. 生成平衡数组的方案数(前缀和+后缀和)
LeetCode 1665. 完成所有任务的最少初始能量(贪心)
LeetCode 1668. 最大重复子字符串
LeetCode 1669. 合并两个链表
LeetCode 1670. 设计前中后队列(deque)
LeetCode 1671. 得到山形数组的最少删除次数(最长上升子序DP nlogn)
LeetCode 1672. 最富有客户的资产总量
LeetCode 1673. 找出最具竞争力的子序列(单调栈)
LeetCode 1674. 使数组互补的最少操作次数(差分思想)
LeetCode 1676. 二叉树的最近公共祖先 IV
LeetCode 1678. 设计 Goal 解析器
LeetCode 1679. K 和数对的最大数目(哈希)
LeetCode 1680. 连接连续二进制数字(位运算)
LeetCode 1681. 最小不兼容性(回溯+剪枝)
LeetCode 1684. 统计一致字符串的数目(哈希)
LeetCode 1685. 有序数组中差绝对值之和(前缀和)
LeetCode 1686. 石子游戏 VI(贪心)
LeetCode 1688. 比赛中的配对次数(模拟)
LeetCode 1689. 十-二进制数的最少数目(脑筋急转弯)
LeetCode 1690. 石子游戏 VII(博弈DP)
LeetCode 1691. 堆叠长方体的最大高度(排序+最大上升子序DP)
LeetCode 1694. 重新格式化电话号码(模拟)
LeetCode 1695. 删除子数组的最大得分(前缀和+哈希+双指针)
LeetCode 1696. 跳跃游戏 VI(优先队列 / 单调队列)
LeetCode 1697. 检查边长度限制的路径是否存在(排序+并查集)
LeetCode 1700. 无法吃午餐的学生数量(队列模拟 / 不模拟)
LeetCode 1701. 平均等待时间(模拟)
LeetCode 1702. 修改后的最大二进制字符串(贪心)
LeetCode 1704. 判断字符串的两半是否相似
LeetCode 1705. 吃苹果的最大数目(优先队列)
LeetCode 1706. 球会落何处(模拟)
LeetCode 1707. 与数组中元素的最大异或值(Trie树)
LeetCode 1708. 长度为 K 的最大子数组
LeetCode 1710. 卡车上的最大单元数(排序,模拟)
LeetCode 1711. 大餐计数(map计数 + 二分查找)
LeetCode 1712. 将数组分成三个子数组的方案数(前缀和 + 二分查找)
LeetCode 1713. 得到子序列的最少操作次数(最长上升子序DP nlogn)
LeetCode 1716. 计算力扣银行的钱(等差数列)
LeetCode 1717. 删除子字符串的最大得分
LeetCode 1718. 构建字典序最大的可行序列(贪心+回溯)
LeetCode 1720. 解码异或后的数组(位运算)
LeetCode 1721. 交换链表中的节点(快慢指针)
LeetCode 1722. 执行交换操作后的最小汉明距离(并查集)
LeetCode 1723. 完成所有工作的最短时间(DFS+剪枝 / 状态压缩DP)
LeetCode 1725. 可以形成最大正方形的矩形数目
LeetCode 1726. 同积元组(排列组合)
LeetCode 1727. 重新排列后的最大子矩阵(前缀和+排序)
LeetCode 1730. 获取食物的最短路径(BFS)
LeetCode 1732. 找到最高海拔
LeetCode 1733. 需要教语言的最少人数(哈希+枚举)
LeetCode 1734. 解码异或后的排列(位运算)
LeetCode 1736. 替换隐藏数字得到的最晚时间
LeetCode 1737. 满足三条件之一需改变的最少字符数(计数)
LeetCode 1738. 找出第 K 大的异或坐标值(DP)
LeetCode 1739. 放置盒子(数学)
LeetCode 1742. 盒子中小球的最大数量
LeetCode 1743. 从相邻元素对还原数组(拓扑排序)
LeetCode 1744. 你能在你最喜欢的那天吃到你最喜欢的糖果吗?(前缀和)
LeetCode 1745. 回文串分割 IV(区间DP)
LeetCode 1748. 唯一元素的和
LeetCode 1749. 任意子数组和的绝对值的最大值(前缀和)
LeetCode 1750. 删除字符串两端相同字符后的最短长度(双指针)
LeetCode 1751. 最多可以参加的会议数目 II(DP + 二分查找)
LeetCode 1752. 检查数组是否经排序和轮转得到
LeetCode 1753. 移除石子的最大得分(优先队列)
LeetCode 1754. 构造字典序最大的合并字符串
LeetCode 1755. 最接近目标值的子序列和(状态枚举 + 双指针)
LeetCode 1758. 生成交替二进制字符串的最少操作数(DP)
LeetCode 1759. 统计同构子字符串的数目
LeetCode 1760. 袋子里最少数目的球(二分查找)
LeetCode 1763. 最长的美好子字符串
LeetCode 1764. 通过连接另一个数组的子数组得到一个数组
LeetCode 1765. 地图中的最高点(BFS)
LeetCode 1768. 交替合并字符串
LeetCode 1769. 移动所有球到每个盒子所需的最小操作数(前缀和)
LeetCode 1770. 执行乘法运算的最大分数(DP)
LeetCode 1771. 由子序列构造的最长回文串的长度(最长回文子序)
LeetCode 1773. 统计匹配检索规则的物品数量
LeetCode 1774. 最接近目标价格的甜点成本(DFS / 01背包)
LeetCode 1775. 通过最少操作次数使数组的和相等(贪心+双指针)
LeetCode 1776. 车队 II(单调栈)
LeetCode 1779. 找到最近的有相同 X 或 Y 坐标的点
LeetCode 1780. 判断一个数字是否可以表示成三的幂的和(位运算)
LeetCode 1781. 所有子字符串美丽值之和
LeetCode 1784. 检查二进制字符串字段
LeetCode 1785. 构成特定和需要添加的最少元素(贪心)
LeetCode 1786. 从第一个节点出发到最后一个节点的受限路径数(迪杰斯特拉 + 拓扑排序)
LeetCode 1790. 仅执行一次字符串交换能否使两个字符串相等
LeetCode 1791. 找出星型图的中心节点(图出入度)
LeetCode 1792. 最大平均通过率(优先队列)
LeetCode 1793. 好子数组的最大分数(单调栈)
LeetCode 1796. 字符串中第二大的数字
LeetCode 1797. 设计一个验证系统(map)
LeetCode 1798. 你能构造出连续值的最大数目
LeetCode 1799. N 次操作后的最大分数和(回溯 / 状态压缩DP)
LeetCode 1800. 最大升序子数组和
LeetCode 1801. 积压订单中的订单总数(map)
LeetCode 1802. 有界数组中指定下标处的最大值(思维题)
LeetCode 1805. 字符串中不同整数的数目(哈希set)
LeetCode 1806. 还原排列的最少操作步数(模拟)
LeetCode 1807. 替换字符串中的括号内容(哈希map)
LeetCode 1808. 好因子的最大数目(整数拆分,乘积最大)
LeetCode 1812. 判断国际象棋棋盘中一个格子的颜色
LeetCode 1813. 句子相似性 III
LeetCode 1814. 统计一个数组中好对子的数目(哈希)
LeetCode 1816. 截断句子
LeetCode 1817. 查找用户活跃分钟数(哈希)
LeetCode 1818. 绝对差值和(二分查找)
LeetCode 1819. 序列中不同最大公约数的数目
LeetCode 1822. 数组元素积的符号
LeetCode 1824. 最少侧跳次数(DP)
LeetCode 1825. 求出 MK 平均值(set + queue)
LeetCode 1826. 有缺陷的传感器(枚举)
LeetCode 1827. 最少操作使数组递增
LeetCode 1828. 统计一个圆中点的数目
LeetCode 1829. 每个查询的最大异或值(前缀异或 + 位运算)
LeetCode 1832. 判断句子是否为全字母句
LeetCode 1833. 雪糕的最大数量(贪心)
LeetCode 1834. 单线程 CPU(排序 + 优先队列)
LeetCode 1835. 所有数对按位与结果的异或和(位运算 (a&b)^(a&c) = a&(b^c) )
LeetCode 1837. K 进制表示下的各位数字总和
LeetCode 1838. 最高频元素的频数(二分查找)
LeetCode 1839. 所有元音按顺序排布的最长子字符串(滑动窗口)
LeetCode 1844. 将所有数字用字符替换
LeetCode 1845. 座位预约管理系统(set)
LeetCode 1846. 减小和重新排列数组后的最大元素
LeetCode 1847. 最近的房间(排序离线计算 + 二分查找)
LeetCode 1848. 到目标元素的最小距离
LeetCode 1849. 将字符串拆分为递减的连续值(回溯)
LeetCode 1851. 包含每个查询的最小区间(排序 + 离线查询 + 优先队列)
LeetCode 1852. 每个子数组的数字种类数(滑窗)
LeetCode 1854. 人口最多的年份(差分)
LeetCode 1855. 下标对中的最大距离(双指针)
LeetCode 1856. 子数组最小乘积的最大值(前缀和 + 单调栈)
LeetCode 1859. 将句子排序
LeetCode 1860. 增长的内存泄露(等差数列)
LeetCode 1861. 旋转盒子(前缀和)
LeetCode 1863. 找出所有子集的异或总和再求和(DFS)
LeetCode 1864. 构成交替字符串需要的最小交换次数
LeetCode 1865. 找出和为指定值的下标对(哈希)
LeetCode 1868. 两个行程编码数组的积(双指针)
LeetCode 1869. 哪种连续子字符串更长
LeetCode 1870. 准时到达的列车最小时速(二分查找)
LeetCode 1871. 跳跃游戏 VII(贪心)
LeetCode 1874. 两个数组的最小乘积和
LeetCode 1876. 长度为三且各字符不同的子字符串
LeetCode 1877. 数组中最大数对和的最小值(贪心)
LeetCode 1878. 矩阵中最大的三个菱形和(模拟)
LeetCode 1879. 两个数组最小的异或值之和(状态压缩DP)
  • 619
    点赞
  • 2105
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 367
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 367
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Michael阿明

如果可以,请点赞留言支持我哦!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值