当前位置 博文首页 > Michael是个半路程序员:LeetCode解题汇总目录

    Michael是个半路程序员:LeetCode解题汇总目录

    作者:[db:作者] 时间:2021-09-03 15:14

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

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

    LeetCode MySQL 数据库解题目录

    点击访问 我的 LeetCode 主页

    我的 GitHub 主页
    在这里插入图片描述

    通过1900, 简单571/621, 中等1049/1221, 困难280/467

    • 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 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. 因子的组合(回溯)*