!leetcode
攻略
基本思路
同一类型的题集中刷,边刷边总结
对于一些简单题, 直接看题解, 看看有没有值得学习的方案, 有再记录下来, 不要直接上手做了, 省点时间
hard 没有思路就直接看答案, 一般都不会考这么难的
没有顺利解答的, 要标记一下, 使用 solved 标记
国内面试 200 题足以, 常考的是链表、字符串、动态规划, 但是要面试外企的话需要 500 题, 工作年限越长, 算法考的越少
分类列表
- 字符串
- 数字与字符串间转换, 做完了第一行就行, 第一行倒数第一个也没做, 留着以后做吧
- 字符串匹配只做了前 2 题, 第 2 题还是 unsolved
- 中心扩展法的两题也先不做了, 感觉是动态规划的衍生题目
- 数与位
- 数字的位操作, 做到 231
- 简单数学题, 只做了第一题, 感觉考的不会太多, 太离谱了
- 栈
- 388 没做, 看着就烦
- 括号匹配: 32 没做
- 递归的也先不做, 因为这里的重点是如何用栈去解决递归问题, 得想学好递归再回来简化
- 链表最后一题没做
- 哈希表
- 哈希表最后一题没做
- 贪心算法都没有做, 等之后和动态规划一起处理吧
- 双指针
- 头尾指针, 最后一题接雨水没做, 属于动态规划 + 栈的复合题目, 最后再总结吧
- 滑动窗口, 最后两道困难题没有做, 留着总结完之后再尝试吧
- 快慢指针最后一题, 多方法没做的
- 四叉树没做
- 回溯法, 有一些没做, 按照随想录走的, 剩余的做查漏补, go to next!
- 几个回溯法的都先跳过, 直接从 BFS 开始, bfs 也到此为止吧, 直接从动态规划开始了, 后面再查漏补缺
题解大全
我的建议是先 acwing 再代码随想录 + labuladong 的算法小抄。做为非科班转码选手,可能会有人想知道我是怎么刷 Leetcode 的,在此献上:大家都是如何刷 LeetCode 的?
官方的题解基本就够用了,多拓宽思路
- https://leetcode-solution-leetcode-pp.gitbook.io/leetcode-solution/medium/get-kth-magic-number-lcci
- ac_oier - 力扣(LeetCode)
总结
深度遍历与栈,深度遍历可以通过栈形式的迭代代替
广度遍历与队列,广度遍历只能通过队列形式,无法通过递归
注意入参
提交有 case 不通过是有惩罚的
最常见的问题: 示例给出的都是大于 0 的正数, 我会下意识的以为所有的输入都是正数, 但是其实是会有负数的
这时候初始化值就不能为 0, 而应该是 Number.MIN_SAFE_INTERGER
优先队列
一个数组, 排序的同时, 要获取每个数的 order , 要对应上原来的位置
减少特判
dummyHead
网格问题, 填充额外的行, col 不用填充, 读取到 undefined 自动结束递归
递归改迭代
用一个额外的变量维护结果.
- 链表的 prev cur
- 树的层次遍历队列
../data-structure/tree-traversal
两种数据结构都很常使用递归和迭代, 可以稍微总结一下递归的套路、迭代的套路
递归的一般思路:
- 确定终止条件
- 确定单层递归的逻辑
- 需要用到什么参数就补充什么参数, 再确定返回值即可
递归与回溯
Index 问题
有 n 个 item, 每个 item 的 index 从 0 开始, 每个 item 的前后都可以插入新的 item
这个可插入的 slot 就像是尺子上面 5cm 那个长条, 除了线段是一段一段的, 每一段前后都会有一根长条, 这个长条归属于谁?
一个解决方案就是在 list 的最后再添加一个空的 item, 这个 item 的唯一作用就是把所有的 slot 都定义成了在 item 前面. 解决了 slot 的归属问题. 如果你没有这个空的 slot , 就不清楚最后一个 slot 是谁的了.
这个问题从小到遇到过无数遍了, 比如 星期一到星期五之间有多少天? 包不包含头? 包不包含尾?
48. Rotate Image 这一题为了处理好第 n 列和索引 i j 的关系, 浪费了不少时间.
我们在日常中描述矩阵的时候, 都是 one index 的, 但是在代码里却要切换成 0 index
先用正常逻辑去处理 index, 如果出现边界情况, 比如 index 为负 1, 这时候再把所有的 index + 1
从特殊到一般, 先想想最简单的情况 index 的关系是怎么样的, 然后再拓展到一般情况
植树问题
方案一: 把 Index 代表的含义写下来, 避免反复确认
preSum[i]
就代表着 nums[0..i-1]
所有元素的累加和,如果我们想求区间 nums[i..j]
的累加和,只要计算 preSum[j+1] - preSum[i]
即可,而不需要遍历整个区间求和。
dp[i]
代表着从 0
到 i-1
个字符的最长上升子序列
Arithmetic-sequence
Time-sequence 时间类题目
主要特点
- 注重时间开始和结束,比如 1s 初,1s 末
- 注重时间的间隔,1s 初和 1s 末,间隔了 1s
Solution Tips
想不明白的时候多画时序图
存在性判断问题
用哈希表, 快速判断
节省空间复杂度的方法
原地标记
负数标记, 或者随便弄一个能识别出来的标记, -0, xxx 都行的
又叫做原地哈希
滚动数组都是类似的原理
其实本质上就是利用数组自身的空间
循环数组也是一样的, 旋转数组
矩阵操作
遍历矩阵的正确姿势: 两个 for 循环的标记变量直接使用 row 和 col, 不需要再声明 i j 来获取临时的 row col
如何遍历矩阵最外面的那一圈? 用一个路径数组, [0,1],[1,0]
, 这样就可以遍历一圈了
const firstRow = Array.from({ length: board[0].length }, (val, index) => [0, index]);
const lastRow = Array.from({ length: board[0].length }, (val, index) => [board.length - 1, index]);
const firstCol = Array.from({ length: board.length - 2 }, (val, index) => [index + 1, 0]);
const lastCol = Array.from({ length: board.length - 2 }, (val, index) => [index + 1, board[0].length - 1]);
const step = [...firstRow, ...lastCol, ...lastRow, ...firstCol];
位运算
异或
异或的特性就是自己异或自己为 0, 利用这个特性, 可以用于处理奇偶数次的题目
逐位 操作
用作数的对齐, 之后做运算
var hammingDistance = function(x, y) {
// 将两个数转换为二进制, 然后进行逐位对比
const a = x.toString(2);
const b = y.toString(2);
let i = a.length - 1;
let j = b.length - 1;
while (i >= 0 || j >= 0) {
const bitA = a[i] || '0';
const bitB = b[j] || '0';
}
};
console.log(hammingDistance(1, 4))
以前的我居然命名为 归并式对比, 你别说, 还有点内味
自然数组
数组长度为 n, 且包含 0 到 n - 1 的自然数
特点就是每个数会对应 index, 少了哪个 index 代表那个数缺失了, 被访问过
跟随 index 跳动会成环, 记得还有一道题是超出了 n 的, 但是超出之后会取模, 所以本质上还是自然数组
287 与 442 相比就是不能修改原数组
又要求 O(n) , 所以只能用判圈算法, 然后就是无法找出全部的重复数了
只能知道哪个重复了
跳过重复
递归与分治
和二叉树的分治很像
File | solution tips overview |
---|---|
面试题 08.06. 汉诺塔问题 | 面试题 08.06. 汉诺塔问题#solution tips |
93. 复原 IP 地址 | 93. 复原 IP 地址#solution tips |
131. 分割回文串 | 131. 分割回文串#solution tips |
旋转 = 翻转
Sub 总结
计数问题转换为求和问题
ACM 考点
https://oi-wiki.org/string/minimal-string/
方案总数
Leetcode Overview
File | difficulty | etags | unsolved | date-created |
---|---|---|---|---|
1222. 可以攻击国王的皇后 | medium | true | 2023-09-14-Thu, 9:37:12 am | |
2596. 检查骑士巡视方案 | medium | true | 2023-09-13-Wed, 9:06:24 am | |
1462. 课程表 IV | medium | true | 2023-09-12-Tue, 9:52:59 am | |
1123. 最深叶节点的最近公共祖先 | medium | true | 2023-09-09-Sat, 8:07:51 pm | |
207. 课程表 | medium | false | 2023-09-09-Sat, 6:05:46 pm | |
997. 找到小镇的法官 | easy | false | 2023-09-09-Sat, 10:58:45 am | |
2594. 修车的最少时间 | medium | true | 2023-09-07-Thu, 9:34:26 am | |
1921. 消灭怪物的最大数量 | medium | true | 2023-09-03-Sun, 11:13:01 am | |
179. 最大数 | medium | true | 2023-09-02-Sat, 3:32:01 pm | |
2511. 最多可以摧毁的敌人城堡数目 | easy | true | 2023-09-02-Sat, 2:37:33 pm | |
2240. 买钢笔和铅笔的方案数 | medium | true | 2023-09-01-Fri, 9:09:52 am | |
174. 地下城游戏 | hard | false | 2023-08-31-Thu, 9:07:43 am | |
1761. 一个图中连通三元组的最小度数 | hard | true | 2023-08-31-Thu, 9:03:51 am | |
1654. 到家的最少跳跃次数 | medium | true | 2023-08-31-Thu, 9:03:04 am | |
823. 带因子的二叉树 | medium | false | 2023-08-29-Tue, 10:20:05 am | |
57. 插入区间 | medium | false | 2023-08-28-Mon, 9:10:13 am | |
1448. 统计二叉树中好节点的数目 | medium | false | 2023-08-25-Fri, 8:51:22 am | |
1267. 统计参与通信的服务器 | medium | true | 2023-08-24-Thu, 10:18:55 am | |
1782. 统计点对的数目 | hard | true | 2023-08-23-Wed, 9:46:21 am | |
2337. 移动片段得到字符串 | medium | true | 2023-08-21-Mon, 9:12:42 am | |
1109. 航班预订统计 | medium | false | 2023-08-19-Sat, 7:36:13 pm | |
1590. 使数组和能被 P 整除 | medium | true | 2023-08-19-Sat, 6:30:40 pm | |
1524. 和为奇数的子数组数目 | medium | true | 2023-08-19-Sat, 6:28:21 pm | |
974. 和可被 K 整除的子数组 | medium | true | 2023-08-19-Sat, 6:24:12 pm | |
面试题 17.05. 字母与数字 | medium | false | 2023-08-19-Sat, 3:42:23 pm | |
1124. 表现良好的最长时间段 | medium | true | 2023-08-19-Sat, 3:09:21 pm | |
1248. 统计「优美子数组」 | medium | true | 2023-08-18-Fri, 8:22:19 pm | |
1388. 3n 块披萨 | hard | true | 2023-08-18-Fri, 7:21:19 pm | |
1444. 切披萨的方案数 | hard | true | 2023-08-17-Thu, 9:41:49 am | |
12. 整数转罗马数字 | medium | true | 2023-08-17-Thu, 4:15:25 pm | |
1572. 矩阵对角线元素的和 | easy | false | 2023-08-11-Fri, 10:06:36 am | |
1289. 下降路径最小和 II | hard | true | 2023-08-10-Thu, 9:01:51 am | |
1732. 找到最高海拔 | easy | false | 2023-08-09-Wed, 8:45:43 pm | |
1413. 逐步求和得到正数的最小值 | easy | false | 2023-08-09-Wed, 8:18:02 pm | |
1991. 找到数组的中间位置 | easy | false | 2023-08-09-Wed, 3:55:10 pm | |
1749. 任意子数组和的绝对值的最大值 | medium | true | 2023-08-08-Tue, 10:25:55 am | |
22. 括号生成 | medium | false | 2023-08-07-Mon, 9:40:11 am | |
8. 字符串转换整数 (atoi) | medium | false | 2023-08-07-Mon, 12:56:44 pm | |
2516. 每种字符至少取 K 个 | medium | false | 2023-08-06-Sun, 5:34:00 pm | |
76. 最小覆盖子串 | hard | false | 2023-08-06-Sun, 11:54:02 am | |
1658. 将 x 减到 0 的最小操作数 | medium | false | 2023-08-06-Sun, 10:36:17 am | |
904. 水果成篮 | medium | false | 2023-08-06-Sun, 1:29:39 pm | |
365. 水壶问题 | medium | false | 2023-08-05-Sat, 10:38:11 am | |
980. 不同路径 III | hard | true | 2023-08-04-Fri, 9:23:38 am | |
989. 数组形式的整数加法 | easy | false | 2023-08-04-Fri, 7:08:32 pm | |
面试题 08.06. 汉诺塔问题 | easy | true | 2023-08-04-Fri, 2:51:22 pm | |
38. 外观数列 | medium | false | 2023-08-04-Fri, 2:00:46 pm | |
483. 最小好进制 | hard | true | 2023-08-04-Fri, 12:38:18 pm | |
461. 汉明距离 | easy | true | 2023-08-04-Fri, 12:21:52 pm | |
722. 删除注释 | medium | true | 2023-08-03-Thu, 9:48:07 am | |
23. 合并 K 个升序链表 | hard | true | 2023-08-03-Thu, 4:59:51 pm | |
822. 翻转卡片游戏 | medium | true | 2023-08-02-Wed, 9:43:31 am | |
2681. 英雄的力量 | hard | false | 2023-08-01-Tue, 9:42:41 am | |
44. 通配符匹配 | hard | true | 2023-07-31-Mon, 2:25:15 pm | |
142. 环形链表 II | medium | false | 2023-07-30-Sun, 9:28:58 am | |
287. 寻找重复数 | medium | true | 2023-07-30-Sun, 9:13:16 am | |
409. 最长回文串 | easy | false | 2023-07-30-Sun, 3:29:33 pm | |
290. 单词规律 | easy | true | 2023-07-30-Sun, 3:11:27 pm | |
205. 同构字符串 | easy | true | 2023-07-30-Sun, 3:08:40 pm | |
33. 搜索旋转排序数组 | medium | false | 2023-07-28-Fri, 6:36:15 pm | |
69. x 的平方根 | easy | false | 2023-07-28-Fri, 3:46:05 pm | |
35. 搜索插入位置 | easy | false | 2023-07-28-Fri, 3:12:54 pm | |
31. 下一个排列 | medium | false | 2023-07-26-Wed, 9:57:52 am | |
313. 超级丑数 | medium | false | 2023-07-25-Tue, 9:38:47 am | |
264. 丑数 II | medium | false | 2023-07-25-Tue, 9:35:56 am | |
263. 丑数 | easy | false | 2023-07-25-Tue, 9:30:50 am | |
4. 寻找两个正序数组的中位数 | hard | true | 2023-07-24-Mon, 8:50:14 am | |
581. 最短无序连续子数组 | medium | true | 2023-07-24-Mon, 10:58:03 am | |
215. 数组中的第K个最大元素 | medium | false | 2023-07-24-Mon, 10:50:38 am | |
347. 前 K 个高频元素 | medium | true | 2023-07-24-Mon, 10:37:43 am | |
914. 卡牌分组 | easy | false | 2023-07-23-Sun, 3:16:21 pm | |
459. 重复的子字符串 | middle | false | 2023-07-22-Sat, 1:24:44 pm | |
剑指 Offer 58 - II. 左旋转字符串 | easy | false | 2023-07-21-Fri, 4:56:30 pm | |
151. 反转字符串中的单词 | medium | false | 2023-07-21-Fri, 4:49:20 pm | |
剑指 Offer 05. 替换空格 | easy | true | 2023-07-21-Fri, 4:08:31 pm | |
977. 有序数组的平方 | easy | false | 2023-07-20-Thu, 10:51:50 am | |
704. 二分查找 | easy | false | 2023-07-20-Thu, 10:40:20 am | |
84. 柱状图中最大的矩形 | hard | true | 2023-07-20-Thu, 10:17:30 am | |
42. 接雨水 | hard | true | 2023-07-19-Wed, 7:22:20 pm | |
503. 下一个更大元素 II | medium | false | 2023-07-19-Wed, 4:00:07 pm | |
496. 下一个更大元素 I | easy | true | 2023-07-19-Wed, 3:37:09 pm | |
739. 每日温度 | medium | false | 2023-07-19-Wed, 3:09:35 pm | |
516. 最长回文子序列 | medium | true | 2023-07-18-Tue, 7:23:14 pm | |
647. 回文子串 | medium | false | 2023-07-18-Tue, 4:17:13 pm | |
72. 编辑距离 | hard | false | 2023-07-17-Mon, 5:59:34 pm | |
583. 两个字符串的删除操作 | medium | false | 2023-07-17-Mon, 4:01:05 pm | |
115. 不同的子序列 | hard | false | 2023-07-17-Mon, 3:23:50 pm | |
1035. 不相交的线 | medium | true | 2023-07-16-Sun, 7:54:32 pm | |
300. 最长递增子序列 | medium | true | 2023-07-16-Sun, 10:13:53 am | |
718. 最长重复子数组 | medium | true | 2023-07-16-Sun, 1:05:51 pm | |
188. 买卖股票的最佳时机 IV | hard | false | 2023-07-15-Sat, 7:52:03 pm | |
309. 最佳买卖股票时机含冷冻期 | medium | false | 2023-07-15-Sat, 7:25:06 pm | |
123. 买卖股票的最佳时机 III | hard | true | 2023-07-15-Sat, 11:28:51 am | |
198. 打家劫舍 | medium | false | 2023-07-14-Fri, 9:51:08 am | |
121. 买卖股票的最佳时机 | easy | true | 2023-07-14-Fri, 3:55:55 pm | |
337. 打家劫舍 III | medium | true | 2023-07-14-Fri, 11:53:56 am | |
213. 打家劫舍 II | medium | false | 2023-07-14-Fri, 10:56:11 am | |
139. 单词拆分 | medium | true | 2023-07-13-Thu, 5:09:37 pm | |
279. 完全平方数 | medium | true | 2023-07-13-Thu, 4:21:26 pm | |
322. 零钱兑换 | medium | true | 2023-07-13-Thu, 3:52:39 pm | |
377. 组合总和 Ⅳ | medium | true | 2023-07-13-Thu, 12:31:27 pm | |
518. 零钱兑换 II | medium | true | 2023-07-13-Thu, 10:30:11 am | |
474. 一和零 | medium | false | 2023-07-12-Wed, 8:40:02 pm | |
494. 目标和 | medium | true | 2023-07-12-Wed, 6:43:08 pm | |
1049. 最后一块石头的重量 II | medium | true | 2023-07-11-Tue, 8:02:47 pm | |
416. 分割等和子集 | medium | true | 2023-07-11-Tue, 6:47:18 pm | |
509. 斐波那契数 | easy | false | 2023-07-10-Mon, 9:40:29 am | |
343. 整数拆分 | medium | true | 2023-07-10-Mon, 5:41:34 pm | |
63. 不同路径 II | medium | false | 2023-07-10-Mon, 4:46:49 pm | |
62. 不同路径 | medium | false | 2023-07-10-Mon, 4:27:58 pm | |
746. 使用最小花费爬楼梯 | easy | false | 2023-07-10-Mon, 2:36:24 pm | |
70. 爬楼梯 | easy | false | 2023-07-10-Mon, 12:40:02 pm | |
968. 监控二叉树 | hard | true | 2023-07-09-Sun, 8:14:47 pm | |
738. 单调递增的数字 | medium | true | 2023-07-09-Sun, 7:21:25 pm | |
56. 合并区间 | medium | false | 2023-07-09-Sun, 11:25:41 am | |
763. 划分字母区间 | medium | true | 2023-07-09-Sun, 10:52:30 am | |
435. 无重叠区间 | medium | true | 2023-07-08-Sat, 9:18:12 pm | |
452. 用最少数量的箭引爆气球 | medium | true | 2023-07-08-Sat, 8:20:17 pm | |
406. 根据身高重建队列 | medium | true | 2023-07-08-Sat, 3:44:39 pm | |
45. 跳跃游戏 II | medium | true | 2023-07-07-Fri, 9:06:04 am | |
860. 柠檬水找零 | easy | false | 2023-07-07-Fri, 3:33:00 pm | |
135. 分发糖果 | hard | true | 2023-07-07-Fri, 2:57:11 pm | |
134. 加油站 | medium | true | 2023-07-07-Fri, 2:20:06 pm | |
1005. K 次取反后最大化的数组和 | easy | false | 2023-07-07-Fri, 10:36:09 am | |
55. 跳跃游戏 | medium | true | 2023-07-06-Thu, 8:10:20 pm | |
122. 买卖股票的最佳时机 II | medium | true | 2023-07-06-Thu, 7:50:10 pm | |
53. 最大子数组和 | medium | false | 2023-07-06-Thu, 7:37:09 pm | |
376. 摆动序列 | medium | true | 2023-07-06-Thu, 10:37:33 am | |
455. 分发饼干 | easy | false | 2023-07-04-Tue, 9:17:42 pm | |
30. 被围绕的区域 | medium | true | 2023-07-04-Tue, 7:36:29 pm | |
542. 01 矩阵 | medium | true | 2023-06-30-Fri, 8:40:42 am | |
37. 解数独 | hard | true | 2023-06-29-Thu, 8:52:53 am | |
200. 岛屿数量 | medium | true | 2023-06-29-Thu, 6:33:11 pm | |
133. 克隆图 | medium | true | 2023-06-29-Thu, 2:10:23 pm | |
51. N 皇后 | hard | true | 2023-06-27-Tue, 8:38:11 am | |
332. 重新安排行程 | hard | false | 2023-06-25-Sun, 10:45:29 am | |
47. 全排列 II | medium | false | 2023-06-24-Sat, 10:46:34 am | |
46. 全排列 | medium | false | 2023-06-24-Sat, 10:19:14 am | |
491. 递增子序列 | medium | true | 2023-06-22-Thu, 7:49:52 pm | |
90. 子集 II | medium | true | 2023-06-22-Thu, 3:06:59 pm | |
78. 子集 | medium | true | 2023-06-22-Thu, 11:55:52 am | |
93. 复原 IP 地址 | medium | true | 2023-06-22-Thu, 11:07:29 am | |
131. 分割回文串 | medium | true | 2023-06-21-Wed, 8:48:00 pm | |
40. 组合总和 II | medium | false | 2023-06-21-Wed, 7:22:58 pm | |
39. 组合总和 | medium | false | 2023-06-21-Wed, 5:06:05 pm | |
216. 组合总和 III | medium | false | 2023-06-21-Wed, 4:14:57 pm | |
77. 组合 | medium | false | 2023-06-21-Wed, 2:45:54 pm | |
526. 优美的排列 | medium | true | 2023-06-20-Tue, 4:48:50 pm | |
397. 整数替换 | medium | true | 2023-06-20-Tue, 2:55:57 pm | |
17. 电话号码的字母组合 | medium | false | 2023-06-20-Tue, 2:25:19 pm | |
565. 数组嵌套 | medium | true | 2023-06-18-Sun, 9:45:38 pm | |
99. 恢复二叉搜索树 | medium | true | 2023-06-17-Sat, 9:32:40 pm | |
501. 二叉搜索树中的众数 | medium | false | 2023-06-16-Fri, 10:36:36 am | |
236. 二叉树的最近公共祖先 | medium | true | 2023-06-15-Thu, 7:20:18 pm | |
235. 二叉搜索树的最近公共祖先 | medium | true | 2023-06-15-Thu, 11:48:03 am | |
114. 二叉树展开为链表 | medium | false | 2023-06-14-Wed, 7:33:31 pm | |
106. 从中序与后序遍历序列构造二叉树 | medium | true | 2023-06-13-Tue, 10:14:12 am | |
105. 从前序与中序遍历序列构造二叉树 | medium | true | 2023-06-12-Mon, 2:25:56 pm | |
109. 有序链表转换二叉搜索树 | medium | true | 2023-06-11-Sun, 6:46:29 pm | |
108. 将有序数组转换为二叉搜索树 | easy | false | 2023-06-11-Sun, 4:57:08 pm | |
95. 不同的二叉搜索树 II | medium | true | 2023-06-11-Sun, 3:37:01 pm | |
669. 修剪二叉搜索树 | medium | false | 2023-06-10-Sat, 3:59:42 pm | |
98. 验证二叉搜索树 | medium | false | 2023-06-10-Sat, 12:51:22 pm | |
230. 二叉搜索树中第K小的元素 | medium | false | 2023-06-09-Fri, 8:13:39 pm | |
538. 把二叉搜索树转换为累加树 | medium | false | 2023-06-09-Fri, 7:50:18 pm | |
530. 二叉搜索树的最小绝对差 | easy | false | 2023-06-09-Fri, 7:33:01 pm | |
700. 二叉搜索树中的搜索 | easy | false | 2023-06-09-Fri, 5:36:56 pm | |
449. 序列化和反序列化二叉搜索树 | medium | true | 2023-06-09-Fri, 3:12:46 pm | |
652. 寻找重复的子树 | medium | true | 2023-06-09-Fri, 10:16:18 am | |
331. 验证二叉树的前序序列化 | medium | true | 2023-06-08-Thu, 8:39:33 pm | |
606. 根据二叉树创建字符串 | easy | false | 2023-06-08-Thu, 7:27:39 pm | |
297. 二叉树的序列化与反序列化 | hard | true | 2023-06-08-Thu, 7:16:40 pm | |
543. 二叉树的直径 | easy | false | 2023-06-08-Thu, 2:58:58 pm | |
117. 填充每个节点的下一个右侧节点指针 II | medium | false | 2023-06-06-Tue, 7:50:36 pm | |
116. 填充每个节点的下一个右侧节点指针 | medium | false | 2023-06-06-Tue, 7:44:44 pm | |
655. 输出二叉树 | medium | true | 2023-06-06-Tue, 7:23:54 pm | |
199. 二叉树的右视图 | medium | false | 2023-06-06-Tue, 6:12:20 pm | |
404. 左叶子之和 | medium | false | 2023-06-06-Tue, 5:06:07 pm | |
129. 求根节点到叶节点数字之和 | medium | true | 2023-06-06-Tue, 3:59:26 pm | |
113. 路径总和 II | medium | false | 2023-06-06-Tue, 3:43:29 pm | |
112. 路径总和 | easy | false | 2023-06-06-Tue, 3:39:50 pm | |
111. 二叉树的最小深度 | easy | false | 2023-06-06-Tue, 3:35:41 pm | |
653. 两数之和 IV - 输入二叉搜索树 | easy | true | 2023-06-06-Tue, 3:27:14 pm | |
623. 在二叉树中增加一行 | medium | false | 2023-06-06-Tue, 2:50:11 pm | |
257. 二叉树的所有路径 | easy | false | 2023-06-06-Tue, 2:26:33 pm | |
662. 二叉树最大宽度 | medium | true | 2023-06-05-Mon, 9:41:39 am | |
513. 找树左下角的值 | medium | true | 2023-06-05-Mon, 4:53:43 pm | |
671. 二叉树中第二小的节点 | easy | false | 2023-06-05-Mon, 4:38:00 pm | |
690. 员工的重要性 | medium | false | 2023-06-04-Sun, 5:05:09 pm | |
87. 扰乱字符串 | hard | true | 2023-06-04-Sun, 3:08:42 pm | |
687. 最长同值路径 | medium | false | 2023-06-04-Sun, 3:01:09 pm | |
572. 另一棵树的子树 | medium | true | 2023-06-03-Sat, 8:42:12 pm | |
508. 出现次数最多的子树元素和 | medium | false | 2023-06-03-Sat, 8:04:36 pm | |
617. 合并二叉树 | easy | false | 2023-06-03-Sat, 7:29:10 pm | |
437. 路径总和 III | medium | true | 2023-06-03-Sat, 5:12:15 pm | |
226. 翻转二叉树 | easy | false | 2023-06-03-Sat, 12:57:46 pm | |
101. 对称二叉树 | easy | false | 2023-06-03-Sat, 12:28:38 pm | |
654. 最大二叉树 | medium | true | 2023-06-03-Sat, 10:12:52 pm | |
222. 完全二叉树的节点个数 | easy | false | 2023-06-02-Fri, 5:08:35 pm | |
100. 相同的树 | easy | false | 2023-06-02-Fri, 10:33:53 am | |
457. Circular Array Loop | medium | false | 2023-05-31-Wed, 7:55:16 pm | |
234. 回文链表 | easy | false | 2023-05-31-Wed, 12:24:37 pm | |
143. 重排链表 | medium | false | 2023-05-30-Tue, 5:12:55 pm | |
283. 移动零 | easy | false | 2023-05-30-Tue, 12:06:52 pm | |
141. 环形链表 | easy | true | 2023-05-30-Tue, 10:49:46 am | |
475. 供暖器 | medium | true | 2023-05-30-Tue, 10:06:36 am | |
88. 合并两个有序数组 | easy | false | 2023-05-29-Mon, 8:42:20 pm | |
160. 相交链表 | easy | true | 2023-05-29-Mon, 6:52:32 pm | |
328. 奇偶链表 | medium | false | 2023-05-29-Mon, 4:46:00 pm | |
86. 分隔链表 | medium | true | 2023-05-29-Mon, 4:24:11 pm | |
424. 替换后的最长重复字符 | medium | false | 2023-05-29-Mon, 10:37:34 am | |
567. 字符串的排列 | medium | false | 2023-05-28-Sun, 9:41:39 pm | |
438. Find All Anagrams in a String | medium | false | 2023-05-28-Sun, 5:32:41 pm | |
3. 无重复字符的最长子串 | medium | false | 2023-05-28-Sun, 4:53:45 pm | |
209. 长度最小的子数组 | medium | true | 2023-05-28-Sun, 3:58:34 pm | |
674. 最长连续递增序列 | easy | false | 2023-05-28-Sun, 2:52:17 pm | |
187. 重复的DNA序列 | medium | false | 2023-05-28-Sun, 12:55:38 pm | |
611. 有效三角形的个数 | medium | true | 2023-05-28-Sun, 12:12:22 pm | |
82. 删除排序链表中的重复元素 II | medium | false | 2023-05-28-Sun, 10:26:16 am | |
643. 子数组最大平均数 I | easy | false | 2023-05-28-Sun, 1:13:59 pm | |
83. 删除排序链表中的重复元素 | easy | false | 2023-05-27-Sat, 7:42:55 pm | |
80. 删除有序数组中的重复项 II | medium | false | 2023-05-27-Sat, 6:37:23 pm | |
27. 移除元素 | easy | false | 2023-05-27-Sat, 12:29:21 pm | |
26. 删除有序数组中的重复项 | easy | false | 2023-05-27-Sat, 12:25:30 pm | |
11. 盛最多水的容器 | medium | false | 2023-05-26-Fri, 5:15:23 pm | |
16. 最接近的三数之和 | medium | true | 2023-05-26-Fri, 3:29:00 pm | |
15. 三数之和 | medium | false | 2023-05-26-Fri, 2:49:19 pm | |
680. 验证回文串 II | easy | true | 2023-05-26-Fri, 2:13:29 pm | |
345. 反转字符串中的元音字母 | easy | false | 2023-05-26-Fri, 12:33:28 pm | |
605. 种花问题 | easy | true | 2023-05-26-Fri, 12:01:50 pm | |
525. 连续数组 | medium | true | 2023-05-26-Fri, 10:02:58 am | |
523. 连续的子数组和 | medium | true | 2023-05-25-Thu, 8:47:00 pm | |
560. 和为 K 的子数组 | medium | true | 2023-05-25-Thu, 5:48:31 pm | |
18. 四数之和 | medium | false | 2023-05-25-Thu, 3:51:31 pm | |
454. 四数相加 II | medium | false | 2023-05-25-Thu, 11:24:49 am | |
554. 砖墙 | medium | false | 2023-05-25-Thu, 11:03:39 am | |
350. 两个数组的交集 II | easy | false | 2023-05-25-Thu, 10:35:31 am | |
594. 最长和谐子序列 | easy | false | 2023-05-25-Thu, 10:24:55 am | |
220. 存在重复元素 III | hard | true | 2023-05-24-Wed, 9:09:09 pm | |
219. 存在重复元素 II | easy | false | 2023-05-24-Wed, 8:46:52 pm | |
167. 两数之和 II - 输入有序数组 | medium | true | 2023-05-24-Wed, 6:59:41 pm | |
1. 两数之和 | easy | false | 2023-05-24-Wed, 4:25:58 pm | |
466. 统计重复个数 | hard | true | 2023-05-24-Wed, 3:46:55 pm | |
166. 分数到小数 | medium | true | 2023-05-24-Wed, 2:56:31 pm | |
202. 快乐数 | easy | true | 2023-05-24-Wed, 12:40:01 pm | |
128. 最长连续序列 | medium | true | 2023-05-24-Wed, 12:19:39 pm | |
633. 平方数之和 | medium | false | 2023-05-24-Wed, 10:59:41 am | |
21. 合并两个有序链表 | medium | false | 2023-05-23-Tue, 4:23:46 pm | |
445. 两数相加 II | medium | false | 2023-05-23-Tue, 4:10:35 pm | |
2. 两数相加 | medium | false | 2023-05-23-Tue, 4:02:17 pm | |
25. K 个一组翻转链表 | hard | true | 2023-05-23-Tue, 3:05:28 pm | |
92. 反转链表 II | medium | true | 2023-05-23-Tue, 11:05:45 am | |
24. 两两交换链表中的节点 | medium | false | 2023-05-23-Tue, 10:03:40 am | |
61. 旋转链表 | medium | false | 2023-05-22-Mon, 7:41:43 pm | |
430. 扁平化多级双向链表 | medium | false | 2023-05-22-Mon, 4:20:24 pm | |
19. 删除链表的倒数第 N 个结点 | medium | false | 2023-05-22-Mon, 4:06:36 pm | |
591. 标签验证器 | hard | true | 2023-05-21-Sun, 6:43:37 pm | |
636. 函数的独占时间 | medium | false | 2023-05-21-Sun, 6:24:26 pm | |
20. 有效的括号 | easy | false | 2023-05-21-Sun, 6:16:14 pm | |
224. 基本计算器 | hard | true | 2023-05-21-Sun, 5:47:35 pm | |
71. 简化路径 | medium | false | 2023-05-20-Sat, 9:42:39 pm | |
682. 棒球比赛 | easy | false | 2023-05-20-Sat, 9:34:41 pm | |
492. 构造矩形 | easy | false | 2023-05-20-Sat, 7:18:15 pm | |
231. 2 的幂 | easy | false | 2023-05-20-Sat, 5:17:27 pm | |
9. 回文数 | easy | false | 2023-05-20-Sat, 4:32:14 pm | |
7. 整数反转 | medium | false | 2023-05-20-Sat, 4:13:40 pm | |
5. 最长回文子串 | medium | true | 2023-05-19-Fri, 5:01:31 pm | |
686. 重复叠加字符串匹配 | medium | true | 2023-05-19-Fri, 4:27:11 pm | |
68. 文本左右对齐 | hard | false | 2023-05-18-Thu, 3:33:41 pm | |
6. N 字形变换 | medium | true | 2023-05-17-Wed, 3:03:16 pm | |
482. 密钥格式化 | easy | false | 2023-05-17-Wed, 2:40:46 pm | |
306. 累加数 | medium | true | 2023-05-17-Wed, 2:07:46 pm | |
43. 字符串相乘 | medium | true | 2023-05-17-Wed, 11:08:22 am | |
415. 字符串相加 | easy | true | 2023-05-16-Tue, 8:40:13 pm | |
67. 二进制求和 | easy | true | 2023-05-16-Tue, 8:15:33 pm | |
66. 加一 | easy | false | 2023-05-16-Tue, 7:21:56 pm | |
522. 最长特殊序列 II | medium | true | 2023-05-16-Tue, 4:31:46 pm | |
521. 最长特殊序列 Ⅰ | easy | true | 2023-05-16-Tue, 4:05:52 pm | |
524. 通过删除字母匹配到字典里最长单词 | medium | true | 2023-05-16-Tue, 11:35:07 am | |
392. 判断子序列 | easy | true | 2023-05-15-Mon, 8:38:50 pm | |
299. 猜数字游戏 | medium | false | 2023-05-15-Mon, 1:29:08 am | |
467. 环绕字符串中唯一的子字符串 | medium | true | 2023-05-15-Mon, 1:29:08 am | |
537. Complex Number Multiplication | medium | false | 2023-05-15-Mon, 1:29:08 am | |
539. 最小时间差 | medium | false | 2023-05-15-Mon, 1:29:08 am | |
553. 最优除法 | medium | true | 2023-05-15-Mon, 1:29:08 am | |
592. Fraction Addition and Subtraction | medium | false | 2023-05-15-Mon, 1:29:08 am | |
696. 计数二进制子串 | easy | false | 2023-05-15-Mon, 1:29:08 am | |
389. 找不同 | easy | false | 2023-05-14-Sun, 1:29:08 am | |
423. 从英文中重建数字 | medium | false | 2023-05-14-Sun, 1:29:08 am | |
451. 根据字符出现频率排序 | medium | false | 2023-05-14-Sun, 1:29:08 am | |
49. 字母异位词分组 | medium | false | 2023-05-14-Sun, 1:29:08 am | |
125. Valid Palindrome | easy | false | 2023-05-13-Sat, 1:29:08 am | |
14. 最长公共前缀 | easy | false | 2023-05-13-Sat, 1:29:08 am | |
520. 检测大写字母 | easy | false | 2023-05-13-Sat, 1:29:08 am | |
541. 反转字符串 II | easy | false | 2023-05-13-Sat, 1:29:08 am | |
238. 除自身以外数组的乘积 | medium | true | 2023-05-10-Wed, 1:29:08 am | |
289. 生命游戏 | medium | false | 2023-05-10-Wed, 1:29:08 am | |
303. 区域和检索 - 数组不可变 | easy | false | 2023-05-10-Wed, 1:29:08 am | |
304. 二维区域和检索 - 矩阵不可变 | medium | false | 2023-05-10-Wed, 1:29:08 am | |
498. 对角线遍历 | medium | false | 2023-05-10-Wed, 1:29:08 am | |
189. Rotate Array | medium | false | 2023-05-09-Tue, 1:29:08 am | |
396. 旋转函数 | medium | false | 2023-05-09-Tue, 1:29:08 am | |
54. 螺旋矩阵 | medium | false | 2023-05-09-Tue, 1:29:08 am | |
59. Spiral Matrix II | medium | true | 2023-05-09-Tue, 1:29:08 am | |
73. 矩阵置零 | medium | false | 2023-05-09-Tue, 1:29:08 am | |
48. Rotate Image | medium | false | 2023-05-02-Tue, 1:29:08 am | |
566. Reshape the Matrix | easy | false | 2023-05-01-Mon, 12:28:33 pm | |
419. Battleships in a Board | medium | false | 2023-05-01-Mon, 1:29:08 am | |
598. Range Addition II | easy | false | 2023-04-05-Wed, 7:39:18 pm | |
661. Image Smoother | easy | false | 2022-12-31-Sat, 4:38:14 pm | |
118. Pascal's Triangle | easy | false | 2022-12-28-Wed, 12:33:27 pm | |
665. Non-decreasing Array | medium | false | 2022-09-20-Tue, 3:36:55 pm | |
!leetcode | - | false | 2022-09-13-Tue, 9:06:50 am | |
645. Set Mismatch | easy | false | 2022-09-13-Tue, 9:06:49 am | |
453. Minimum Moves to Equal Array Elements | medium | false | 2022-09-13-Tue, 3:08:51 pm | |
274. H-Index | medium | false | 2022-09-12-Mon, 8:22:42 pm | |
448. Find All Numbers Disappeared in an Array | easy | false | 2022-09-12-Mon, 3:53:27 pm | |
41. First Missing Positive | hard | false | 2022-09-12-Mon, 3:52:00 pm | |
442. Find All Duplicates in an Array | medium | false | 2022-09-12-Mon, 3:50:54 pm | |
697. Degree of an Array | easy | false | 2022-09-11-Sun, 4:39:54 pm | |
414. Third Maximum Number | easy | false | 2022-09-08-Thu, 8:46:18 am | |
485. 最大连续 1 的个数 | easy | false | 2022-09-08-Thu, 10:33:59 pm | |
495. 提莫攻击 | easy | false | 2022-09-07-Wed, 11:17:06 pm | |
628. Maximum Product of Three Numbers | easy | false | 2022-09-06-Tue, 11:09:41 pm |