砥砺前行 未来可期
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 182 | 查找重复的电子邮箱 | Easy | 182. 查找重复的电子邮箱 - Easy |
| 527 | 交换工资 | Easy | 627. 交换工资 - Easy |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 195 | 第十行 | Easy | 195. 第十行 - Easy |
| 192 | 统计词频 | Medium | 192. 统计词频 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 16 | 最接近的三数之和 | Medium | 16. 最接近的三数之和 - Medium |
| 50 | Pow(x, n) | Medium | 50. Pow(x, n) - Medium |
| 56 | 合并区间 | Medium | 56. 合并区间 - Medium |
| 136 | 只出现一次的数字 | Easy | 136. 只出现一次的数字 - Easy |
| 137 | 只出现一次的数字 II | Medium | 137. 只出现一次的数字 II - Medium |
| 169 | 求众数 - Easy | O(nlogn) | 169. 求众数 - Easy - O(nlogn) |
| 169 | 求众数 - Easy | O(n) 摩尔根投票法 | 169. 求众数 - Easy - O(n) 摩尔根投票法 |
| 172 | 阶乘后的零 | Easy | 172. 阶乘后的零 - Easy |
| 215 | 数组中的第K个最大元素 | Medium | 215. 数组中的第K个最大元素 - Medium |
| 229 | 求众数 II | Medium | 229. 求众数 II - Medium |
| 240 | 搜索二维矩阵 II - Medium](src/leetcode/algo/misc/leet_zh_1108/Solution.java) | [题目链接 | 240. 搜索二维矩阵 II - Medium - 题目链接 |
| 470 | 用 Rand7() 实现 Rand10() | Medium | 470. 用 Rand7() 实现 Rand10() - Medium |
| 729 | 我的日程安排表 I | Medium | 729. 我的日程安排表 I - Medium |
| 731 | 我的日程安排表 II | Medium | 731. 我的日程安排表 II - Medium |
| 732 | 我的日程安排表 III | Hard | 732. 我的日程安排表 III - Hard |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 3 | 无重复字符的最长子串 | Medium | 3. 无重复字符的最长子串 - Medium |
| 76 | 最小覆盖子串 | Hard | 76. 最小覆盖子串 - Hard |
| 438 | 找到字符串中所有字母异位词 | Medium | 438. 找到字符串中所有字母异位词 - Medium |
| 14 | 最长公共前缀 | Easy | 最长公共前缀 - Easy |
| - | 无重复字符的最长子串 | Medium | 无重复字符的最长子串 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 10 | 正则表达式匹配 | Hard | 10. 正则表达式匹配 - Hard |
| 77 | 组合 | Medium | 77. 组合 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 455 | 分发饼干 | Easy | 455. 分发饼干 - Easy |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 10 | 正则表达式匹配_pending | Hard | 10. 正则表达式匹配_pending - Hard |
| 64 | 最小路径和 | Medium | 64. 最小路径和 - Medium |
| 70 | 爬楼梯 | Easy | 70. 爬楼梯 - Easy |
| 53 | 最大子序和 | Easy | 53. 最大子序和 - Easy |
| 121 | 买卖股票的最佳时机 | Easy | 121. 买卖股票的最佳时机 - Easy |
| 122 | 买卖股票的最佳时机 II | Easy | 122. 买卖股票的最佳时机 II - Easy |
| 123 | 买卖股票的最佳时机 III | Hard | 123. 买卖股票的最佳时机 III - Hard |
| 124 | 二叉树中的最大路径和 | Hard | 124. 二叉树中的最大路径和 - Hard |
| 188 | 买卖股票的最佳时机 IV | Hard | 188. 买卖股票的最佳时机 IV - Hard |
| 309 | 最佳买卖股票时机含冷冻期 | Medium | 309. 最佳买卖股票时机含冷冻期 - Medium |
| 198 | 打家劫舍 | Easy | 198. 打家劫舍 - Easy |
| 279 | 完全平方数 | Medium | 279. 完全平方数 - Medium |
| 300 | 最长上升子序列 | Medium_O(n^2) | 300. 最长上升子序列 - Medium_O(n^2) |
| 300 | 最长上升子序列 | Medium_O(nlogN)_pending | 300. 最长上升子序列 - Medium_O(nlogN)_pending |
| 322 | 零钱兑换 | Medium | 322. 零钱兑换 - Medium |
| 343 | 整数拆分 | Medium | 343. 整数拆分 - Medium |
| 395 | 至少有K个重复字符的最长子串 | Medium | 395. 至少有K个重复字符的最长子串 - Medium |
| 838 | 推多米诺 | Medium | 838. 推多米诺 - Medium |
| 887 | 鸡蛋掉落 | Hard | 887. 鸡蛋掉落 - Hard |
| 968 | 监控二叉树 | Hard | 968. 监控二叉树 - Hard |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 22 | 括号生成 | Medium | 22. 括号生成 - Medium |
| 51 | N 皇后 | Hard_递归 | 51. N 皇后 - Hard_递归 |
| 51 | N 皇后 | Hard_迭代 | 51. N 皇后 - Hard_迭代 |
| 52 | N 皇后 II | Hard | 52. N 皇后 II - Hard |
| 101 | 对称二叉树 | Easy | 101. 对称二叉树 - Easy |
| 547 | 朋友圈 | Medium_DFS | 547. 朋友圈 - Medium_DFS |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 101 | 对称二叉树 | Easy | 101. 对称二叉树 - Easy |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 20 | Valid Parentheses(合法/有效的括号) | Easy | 20. Valid Parentheses(合法/有效的括号)- Easy |
| 155 | 最小栈 | Easy | 155. 最小栈 - Easy |
| 856 | 括号的分数 | Medium | 856. 括号的分数 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 347 | 前 K 个高频元素 | Medium | 347. 前 K 个高频元素 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 1 | 两数之和 | Easy | 1. 两数之和 - Easy |
| 347 | 前 K 个高频元素 | Medium | 347. 前 K 个高频元素 - Medium |
| 380 | 常数时间插入、删除和获取随机元素- Medium_pending | Medium | 380. 常数时间插入、删除和获取随机元素- Medium_pending |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 2 | 两数相加 | Medium | 2. 两数相加 - Medium |
| 19 | 删除链表的倒数第N个节点 | Medium | 19. 删除链表的倒数第N个节点 - Medium |
| 25 | K 个一组翻转链表 | Hard | 25. K 个一组翻转链表 - Hard |
| 138 | 复制带随机指针的链表 | Medium | 138. 复制带随机指针的链表 - Medium |
| 141 | 环形链表 | Easy | 141. 环形链表 - Easy |
| 148 | 排序链表 | Medium | 148. 排序链表 - Medium |
| 148 | 排序链表 | Medium_优化 | 148. 排序链表 - Medium_优化 |
| 160 | 交叉链表 | Easy | 160. 交叉链表 - Easy |
| 160 | 交叉链表 | Easy_优化 | 160. 交叉链表 - Easy_优化 |
| 203 | 移除链表元素 | Medium_递归 | 203. 移除链表元素 - Medium_递归 |
| 203 | 移除链表元素 | Medium_虚拟头结点 | 203. 移除链表元素 - Medium_虚拟头结点 |
| 206 | 反转链表 | Easy | 206. 反转链表 - Easy |
| 234 | 回文链表 | Easy | 234. 回文链表 - Easy |
| 237 | 删除链表中的节点 | Easy | 237. 删除链表中的节点 - Easy |
| 328 | 奇偶链表 | Medium_pending | 328. 奇偶链表 - Medium_pending |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 94 | 二叉树中序遍历 | Medium_迭代 | 94. 二叉树中序遍历 - Medium_迭代 |
| 98 | 验证二叉搜索树 | Medium | 98. 验证二叉搜索树 - Medium |
| 104 | 二叉树的最大深度 | Easy_迭代 | 104. 二叉树的最大深度 - Easy_迭代 |
| 104 | 二叉树的最大深度 | Easy_递归 | 104. 二叉树的最大深度 - Easy_递归 |
| 108 | 将有序数组转换为二叉搜索树 | Easy | 108. 将有序数组转换为二叉搜索树 - Easy |
| 110 | 平衡二叉树 | Easy | 110. 平衡二叉树 - Easy |
| 112 | 路径总和 II | Medium | 112. 路径总和 II - Medium |
| 113 | 路径总和 | Easy | 113. 路径总和 - Easy |
| 114 | 二叉树展开为链表 | Medium | 114. 二叉树展开为链表 - Medium |
| 129 | 求根到叶子节点数字之和 | Medium | 129. 求根到叶子节点数字之和 - Medium |
| 145 | 二叉树后续序遍历 | Medium_递归 | 145. 二叉树后续序遍历 - Medium_递归 |
| 199 | 二叉树的右视图 | Medium | 199. 二叉树的右视图 - Medium |
| 235 | 二叉搜索树的最近公共祖先 | Easy | 235. 二叉搜索树的最近公共祖先 - Easy |
| 236 | 二叉树的最近公共祖先 | Medium | 236. 二叉树的最近公共祖先 - Medium |
| 257 | 二叉树的所有路径 | Easy | 257. 二叉树的所有路径 - Easy |
| 297 | 二叉树的序列化与反序列化 | Hard | 297. 二叉树的序列化与反序列化 - Hard |
| 450 | 删除二叉搜索树中的节点 | Medium | 450. 删除二叉搜索树中的节点 |
| 530 | 二叉搜索树的最小绝对差 | Easy_treeToList | 530. 二叉搜索树的最小绝对差 - Easy_treeToList |
| 530 | 二叉搜索树的最小绝对差 | Easy_treeToDoubleList | 530. 二叉搜索树的最小绝对差 - Easy_treeToDoubleList |
| 814 | 二叉树剪枝 | Medium | 814. 二叉树剪枝 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 208 | 实现 Trie (前缀树) | Medium_TreeMap | 208. 实现 Trie (前缀树) - Medium_TreeMap |
| 208 | 实现 Trie (前缀树) | Medium_数组 | 208. 实现 Trie (前缀树) - Medium_数组 |
| 211 | 添加与搜索单词 - 数据结构设计 | Medium_TreeMap | 211. 添加与搜索单词 - 数据结构设计 - Medium_TreeMap |
| 211 | 添加与搜索单词 - 数据结构设计 | Medium_数组 | 211. 添加与搜索单词 - 数据结构设计 - Medium_数组 |
| 421 | 数组中两个数的最大异或值 | Medium | 421. 数组中两个数的最大异或值 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 303 | 区域和检索 - 数组不可变 | Easy | 303. 区域和检索 - 数组不可变 - Easy |
| 307 | 区域和检索 - 数组可修改 | Medium | 307. 区域和检索 - 数组可修改 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 200 | 岛屿的个数 | Medium | 200. 岛屿的个数 - Medium |
| 547 | 朋友圈 | Medium_并查集 | 547. 朋友圈 - Medium_并查集 |
| 547 | 朋友圈 | Medium_DFS | 547. 朋友圈 - Medium_DFS |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 127 | 单词接龙 | Medium | 127. 单词接龙 - Medium |
| 133 | 克隆图 | Medium | 133. 克隆图 - Medium |
| 200 | 岛屿的个数 | Medium | 200. 岛屿的个数 - Medium |
| 207 | 课程表 | Medium | 207. 课程表 - Medium |
| 207 | 课程表 | Medium_拓扑排序 | 207. 课程表 - Medium_拓扑排序 |
| 210 | 课程表 II | Medium_拓扑排序 | 210. 课程表 II - Medium_拓扑排序 |
| 785 | 判断二分图 | Medium | 785. 判断二分图 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 173 | 二叉搜索树迭代器 | Medium_辅助栈 | 173. 二叉搜索树迭代器 - Medium_辅助栈 |
| 173 | 二叉搜索树迭代器 | Medium_空间复杂度O(1),next()平均时间复杂度O(1) | 173. 二叉搜索树迭代器 - Medium_空间复杂度O(1),next()平均时间复杂度O(1) |
| 225 | 用队列实现栈 | Medium | 225. 用队列实现栈 |
| 232 | 用栈实现队列 | Medium | 232. 用栈实现队列 |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| - | 无重复字符的最长子串 | Medium | 无重复字符的最长子串 |
| - | 最长公共前缀 | Easy | 最长公共前缀 |
| - | 合并两个有序链表 | Easy | 合并两个有序链表 |
| - | 买卖股票的最佳时机 | Easy | 买卖股票的最佳时机 |
| - | 二叉搜索树中第k小的节点 | Easy | 二叉搜索树中第k小的节点 |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| - | 将数组分成和相等的三个部分 | Easy | 将数组分成和相等的三个部分 - Easy |
| - | 可被 K 整除的最小整数 | Medium | 可被 K 整除的最小整数 - Medium |
| - | 最佳观光组合 | Medium | 最佳观光组合 - Medium |
| - | 子串能表示从 1 到 N 数字的二进制串 | Medium | 子串能表示从 1 到 N 数字的二进制串 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| - | 可被 5 整除的二进制前缀 | Easy | 可被 5 整除的二进制前缀 - Easy |
| - | 负二进制转换 | Medium | 负二进制转换 - Medium |
| - | 链表中的下一个更大节点 | Medium | 链表中的下一个更大节点 - Medium |
| - | 飞地的数量 | Medium_DFS | 飞地的数量 - Medium_DFS |
| - | 飞地的数量 | Medium_Queue | 飞地的数量 - Medium_Queue |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| - | 删除最外层的括号 | Easy | 删除最外层的括号 - Easy |
| - | 从根到叶的二进制数之和 | Medium | 从根到叶的二进制数之和 - Medium |
| - | 驼峰式匹配 | Medium | 驼峰式匹配 - Medium |
| - | 视频拼接 | Medium | 视频拼接 - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| - | 除数博弈 | Easy | 除数博弈 - Easy |
| - | 节点与其祖先之间的最大差值 | Medium | 节点与其祖先之间的最大差值 - Medium |
| - | 最长等差数列 | Medium_pending_TLE | 最长等差数列 - Medium_pending_TLE |
| - | 从先序遍历还原二叉树 | Hard | 从先序遍历还原二叉树 - Hard |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 1029 | 两地调度 | Easy | 1029. 两地调度 - Easy |
| 1030 | 距离顺序排列矩阵单元格 | Easy | 1030. 距离顺序排列矩阵单元格 - Easy |
| 1031 | 两个非重叠子数组的最大和 | Medium | 1031. 两个非重叠子数组的最大和 - Medium |
| 1032 | 字符流 | Hard | 1032. 字符流 - Hard |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 5039 | 移动石子直到连续 | Easy | 5039. 移动石子直到连续 - Easy |
| 5040 | 边框着色 | Medium | 5040. 边框着色 - Medium |
| 5041 | 不相交的线 | Easy | 5041. 不相交的线 - Easy |
| 5042 | 逃离大迷宫_pending | Hard | 5042. 逃离大迷宫_pending - Hard |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 5051 | 有效的回旋镖 | Easy | 5051. 有效的回旋镖 - Easy |
| 5050 | 从二叉搜索树到更大和树 | Medium | 5050. 从二叉搜索树到更大和树 - Medium |
| 5047 | 多边形三角剖分的最低得分_pending | Medium | 5047. 多边形三角剖分的最低得分_pending - Medium |
| 5049 | 移动石子直到连续 II_pending | Medium | 5049. 移动石子直到连续 II_pending - Medium |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| 5055 | 困于环中的机器人 | Easy | 5055. 困于环中的机器人 - Easy |
| 5056 | 不邻接植花 | Easy | 5056. 不邻接植花 - Easy |
| 5057 | 分隔数组以得到最大和 | Medium | 5057. 分隔数组以得到最大和 - Medium |
| 5058 | 最长重复子串 | Hard | 5058. 最长重复子串 - Hard |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| - | 用两个栈实现队列 | - | 用两个栈实现队列 |
| - | 重建二叉树 | - | 重建二叉树 |
| - | 跳台阶 | - | 跳台阶 |
| - | 变态跳台阶 | - | 变态跳台阶 - 动态规划 |
| - | 变态跳台阶 | - | 变态跳台阶 - 数学 |
| 序号 | 题目 | 难度 | 代码 |
|---|---|---|---|
| - | 二叉搜索树的第k大节点 | Easy | 剑指 Offer 54. 二叉搜索树的第k大节点 |
因为有一些问题还没有中文翻译,标题中包含 zh 和 en 释义如下:
- en — LeetCode 官网
- zh — 力扣(LeetCode 中文官网)
AlgorithmVisualization - 算法可视化
Pending
Pending
ps:
- 持续更新...后续将添加具体解析,敬请关注我的博客:blog