前言

本文档记录了从每周刷题记录 - 图1每周刷题记录 - 图2每周刷题记录 - 图3日开始每周刷的题目,进行题目的汇总、分类以及思路梳理,起到一个督促和激励的作用。

3月因忙毕设,保证一周刷每周刷题记录 - 图4每周刷题记录 - 图5道题目,4月开始每周每周刷题记录 - 图6道,有时间就多刷。

题目来源主要分为力扣每日一题及其相关题目,之前做过但遗忘的题目。

每周日晚上更新当周所做题目,表格中序号加粗的为值得重复做的好题。题目思路和代码也会传到该知识库中,点击表格对应项可查看,左侧目录也可以看到。

随着题目越来越多,需要对题目做一个知识点分类,方便回顾总结,见「这里」,汇总的包括有代表性的、不熟练的、值得回看的题目。

欢迎大家交流,有错误请指正。

2.27-3.6(5+10+1=16)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 553. 最优除法 数组
数学
DP
贪心
medium Java 2.27 2.27每日一题
2 2016. 增量元素之间的最大差值 数组 easy Java 2.27 2.26每日一题
3 1601. 最多可达成的换楼请求数目 回溯
枚举
位运算
hard Java 2.28 2.28每日一题
4 537. 复数乘法 数学
字符串
medium Java 2.28 2.25每日一题
5 1706. 球会落何处 DFS
模拟
medium Java 2.28 2.24每日一题、官解优雅
6 6. Z 字形变换 字符串 medium Java 3.1 3.1每日一题、学习官解直接构造法
7 917. 仅仅反转字母 字符串
双指针
easy Java 3.1 2.23每日一题
8 838. 推多米诺 双指针
BFS
medium Java 3.1 2.21每日一题、BFS待补充
9 717. 1 比特与 2 比特字符 数组 easy Java 3.2 2.20每日一题
10 258. 各位相加 数学
模拟
easy Java 3.3 3.3每日一题
11 1637. 两点之间不包含任何点的最宽垂直面积 排序 medium Java 3.3 随机一题
12 2104. 子数组范围和 单调栈 medium Java 3.4 3.4每日一题
13 55. 跳跃游戏 贪心
DP
medium Java 3.4 复习旧题
14 521. 最长特殊序列 Ⅰ 字符串 easy Java 3.5 3.5每日一题
15 2100. 适合打劫银行的日子 DP
前缀和
medium Java 3.6 3.6每日一题、需要回看
16 45. 跳跃游戏 II 贪心
DP
medium Java 3.6 跳跃系列第二题、还需理解

3.7-3.13(3+7+3=13)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 504. 七进制数 数学 easy Java 3.7 3.7每日一题
2 1306. 跳跃游戏 III DFS
BFS
medium Java 3.7 跳跃系列第三题
3 2055. 蜡烛之间的盘子 前缀和
二分
medium Java 3.8 3.8每日一题
4 1345. 跳跃游戏 IV BFS
哈希表
hard Java 3.8 跳跃系列第四题、注意超时问题
5 49. 字母异位词分组 哈希表
字符串
medium Java 3.9 复习旧题
6 1340. 跳跃游戏 V DFS
DP
记忆化
hard Java 3.9 跳跃系列第五题、体会记忆化和DP两种做法的思路差异
7 589. N 叉树的前序遍历

DFS
easy Java 3.10 3.10每日一题
8 238. 除自身以外数组的乘积 数组
前缀和
medium Java 3.10 复习旧题
9 2049. 统计最高分的节点数目 二叉树
DFS
数组
medium Java 3.11 3.11每日一题、需要回看
10 590. N 叉树的后序遍历

DFS
easy Java 3.12 3.12每日一题
11 239. 滑动窗口最大值
单调队列
滑窗
hard Java 3.12 复习旧题、经典题、重点掌握
12 1696. 跳跃游戏 VI
单调队列
滑窗
DP
medium Java 3.12 跳跃系列第六题、需要回看
13 393. UTF-8 编码验证 位运算 medium Java 3.13 3.13每日一题

3.14-3.20(3+8+1=12)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 599. 两个列表的最小索引总和 数组
哈希表
easy Java 3.14 3.14每日一题
2 1871. 跳跃游戏 VII 前缀和
DP
有序集合
medium Java 3.14 跳跃系列第七题(last)
3 2044. 统计按位或能得到最大值的子集数目 位运算
回溯
medium Java 3.15 3.15每日一题
4 1654. 到家的最少跳跃次数 BFS
数组
medium Java 3.16 继续跳跃
5 127. 单词接龙 BFS
哈希表
hard Java 3.16 复习旧题、经典题、双向BFS待补充
6 720. 词典中最长的单词 字符串
哈希表
排序
easy Java 3.17 3.17每日一题
7 97. 交错字符串 字符串
DP
medium Java 3.17 复习旧题、空间待优化
8 2043. 简易银行系统 数组
模拟
medium Java 3.18 3.18每日一题
9 1992. 找到所有的农场组 BFS
DFS
矩阵
medium Java 3.18 随机一题
10 419. 甲板上的战舰 DFS
矩阵
medium Java 3.18 1992类似题目
11 606. 根据二叉树创建字符串 二叉树
DFS
easy Java 3.19 3.19每日一题、迭代待补充
12 2131. 连接两字母单词得到的最长回文串 贪心
哈希表
字符串
medium Java 3.19 随机一题、好题、官解更优雅

3.21-3.27(5+9+1=15)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 653. 两数之和 IV - 输入 BST 二叉搜索树
DFS
哈希表
双指针
easy Java 3.21 3.21每日一题
2 204. 计数质数 数学
数组
medium Java 3.21 复习旧题
3 2038. 如果相邻两个颜色均相同则删除当前颜色 字符串
贪心
medium Java 3.22 3.22每日一题
4 53. 最大子数组和 数组
DP
easy Java 3.22 复习旧题
5 440. 字典序的第K小数字 字典树 hard Java 3.23 3.23每日一题、还需理解
6 661. 图片平滑器 矩阵
数组
easy Java 3.24 3.24每日一题
7 1718. 构建字典序最大的可行序列 回溯 medium Java 3.24 随机一题、需要回看
8 172. 阶乘后的零 数学 medium Java 3.25 3.25每日一题
9 746. 使用最小花费爬楼梯 DP easy Java 3.25 复习旧题
10 剑指 Offer 45. 把数组排成最小的数 排序
字符串
medium Java 3.25 随机一题
11 682. 棒球比赛 数组
模拟
easy Java 3.26 3.26每日一题
12 540. 有序数组中的单一元素 二分 medium Java 3.26 异或用的很赞
13 2028. 找出缺失的观测数据 数组
模拟
medium Java 3.27 3.27每日一题
14 128. 最长连续序列 数组
哈希表
并查集
medium Java 3.27 复习旧题
15 390. 消除游戏 数学 medium Java 3.27 复习旧题

3.28-4.3(6+9+2=17)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 693. 交替位二进制数 位运算 easy Java 3.28 3.28每日一题
2 485. 最大连续 1 的个数 滑窗 easy Java 3.28 复习旧题
3 1004. 最大连续1的个数 III 滑窗
二分
前缀和
medium Java 3.29 复习旧题
4 2024. 考试的最大困扰度 滑窗
二分
前缀和
medium Java 3.29 3.29每日一题
5 1606. 找到处理最多请求的服务器 有序集合
优先队列
hard Java 3.30 3.30每日一题
6 1202. 交换字符串中的元素 哈希表
并查集
medium Java 3.30 随机一题、复习
7 728. 自除数 数学
模拟
easy Java 3.31 3.31每日一题
8 1722. 执行交换操作后的最小汉明距离 哈希表
并查集
medium Java 3.31 1202相似题、难度稍微up
9 954. 二倍数对数组 贪心
哈希表
medium Java 4.1 4.1每日一题
10 160. 相交链表 链表 easy Java 4.1 复习旧题
11 187. 重复的DNA序列 哈希表
滑窗
位运算
字符串
medium Java 4.1 复习旧题、位运算很赞
12 420. 强密码检验器 贪心
字符串
hard Java 4.2 4.2每日一题
13 916. 单词子集 字符串 medium Java 4.2 随机一题
14 744. 寻找比目标字母大的最小字母 数组
二分
easy Java 4.3 4.3每日一题
15 2224. 转化时间需要的最少操作数 字符串
贪心
easy Java 4.3 287周赛T1(Y)
16 2225. 找出输掉零场或一场比赛的玩家
哈希表
medium Java 4.3 287周赛T2(Y)
17 2226. 每个小孩最多能分到多少糖果 二分 medium Java 4.3 287周赛T3(Y)

4.4-4.10(5+13+2=20)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 2227. 加密解密字符串 哈希表
DFS
字典树
hard Java 4.4 287周赛T4(N)
2 307. 区域和检索 - 数组可修改 线段树 medium Java 4.4 4.4每日一题
3 303. 区域和检索 - 数组不可变 前缀和 easy Java 4.4 307相关题目
4 762. 二进制表示中质数个计算置位 位运算
数学
easy Java 4.5 4.5每日一题
5 77. 组合 回溯 medium Java 4.5 复习、待剪枝
6 310. 最小高度树 DFS
BFS
拓扑排序
medium Java 4.6 4.6每日一题
7 973. 最接近原点的 K 个点 优先队列
快排
medium Java 4.6 复习
8 796. 旋转字符串 字符串 easy Java 4.7 4.7每日一题
9 1818. 绝对差值和 二分
有序集合
medium Java 4.7 复习、取余有讲究
10 429. N 叉树的层序遍历
BFS
medium Java 4.8 4.8每日一题
11 46. 全排列 回溯 medium Java 4.8 复习
12 47. 全排列 II 回溯 medium Java 4.8 复习
13 39. 组合总和 回溯 medium Java 4.8 复习
14 780. 到达终点 数学 hard Java 4.9 4.9每日一题
15 417. 太平洋大西洋水流问题 DFS
BFS
medium Java 4.9 复习
16 804. 唯一摩尔斯密码词 字符串
哈希表
easy Java 4.10 4.10每日一题
17 2231. 按奇偶性交换后的最大数字 排序
优先队列
easy Java 4.10 288周赛T1(Y)
18 2232. 向表达式添加括号后的最小结果 字符串 medium Java 4.10 288周赛T2(Y)
19 2233. K 次增加后的最大乘积 优先队列 medium Java 4.10 288周赛T3(Y)
20 1985. 找出数组中的第 K 大整数 优先队列 medium Java 4.10 学习使用PriorityQueue.comparator().compare()

4.11-4.17(5+12+4=21)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 357. 统计各位数字都不同的数字个数 数学
DP
medium Java 4.11 4.11每日一题
2 1039. 多边形三角剖分的最低得分 DP medium Java 4.11 复习
3 806. 写字符串需要的行数 字符串 easy Java py 4.12 4.12每日一题
4 312. 戳气球 DP hard Java 4.12 复习
5 1638. 统计只差一个字符的子串数目 字符串
DP
medium Java 4.12 复习、反复回看
6 5. 最长回文子串 字符串
DP
medium Java 4.12 复习
7 380. O(1) 时间插入、删除和获取随机元素 设计
哈希表
medium Java 4.13 4.13每日一题
8 171. Excel 表列序号 数学 easy Java 4.13 随机一题
9 1672. 最富有客户的资产总量 数组 easy Java 4.14 4.14每日一题
10 122. 买卖股票的最佳时机 II DP
贪心
medium Java 4.14 复习
11 123. 买卖股票的最佳时机 III 数组
DP
hard Java 4.14 复习
12 385. 迷你语法分析器
DFS
medium Java 4.15 4.15每日一题
13 1911. 最大子序列交替和 DP
贪心
medium Java 4.15 随机一题
14 188. 买卖股票的最佳时机 IV 数组
DP
hard Java 4.15 复习、123的一般情况
15 479. 最大回文数乘积 数学 hard Java 4.16 4.16每日一题
16 309. 最佳买卖股票时机含冷冻期 数组
DP
medium Java 4.16 复习、需要回看
17 714. 买卖股票的最佳时机含手续费 数组
DP
medium Java 4.16 复习
18 819. 最常见的单词 字符串
哈希表
easy Java py 4.17 4.17每日一题
19 2243. 计算字符串的数字和 字符串 easy Java py 4.17 289周赛T1(Y)
20 2244. 完成所有任务需要的最少轮数 哈希表 medium Java py 4.17 289周赛T2(Y)
21 2245. 转角路径的乘积中最多能有几个尾随零 前缀和
数学
medium Java 4.17 289周赛T3(N)

4.18-4.24(4+15+2=21)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 386. 字典序排数 DFS
字典树
medium Java 4.18 4.18每日一题
2 124. 二叉树中的最大路径和 DFS
DP
hard Java 4.18 复习、进一步理解
3 687. 最长同值路径 DFS
medium Java 4.18 思想同124、重点掌握
4 821. 字符的最短距离 字符串 easy Java 4.19 4.19每日一题
5 2246. 相邻字符不同的最长路径 DFS
hard Java 4.19 289周赛T4(N)、687类似题
6 304. 二维区域和检索 - 矩阵不可变 前缀和 medium Java 4.19 复习、二维区域和模板
7 388. 文件的最长绝对路径 DFS

字符串
medium Java 4.20 4.20每日一题
8 64. 最小路径和 DP medium Java 4.20 复习
9 322. 零钱兑换 DP
BFS
medium Java 4.20 复习、完全背包经典题
10 824. 山羊拉丁文 字符串 easy Java py 4.21 4.21每日一题
11 931. 下降路径最小和 DP
矩阵
medium Java 4.21 复习
12 983. 最低票价 DP medium Java 4.21 复习
13 396. 旋转函数 前缀和
数学
medium Java 4.22 4.22每日一题
14 650. 只有两个键的键盘 DP
数学
medium Java 4.22 复习
15 279. 完全平方数 DP
BFS
medium Java 4.22 复习、思路同322、体会内外层循环交换的区别
16 1049. 最后一块石头的重量 II DP medium Java 4.23 复习
17 120. 三角形最小路径和 DP medium Java 4.23 复习
18 868. 二进制间距 位运算 easy Java 4.24 4.24每日一题
19 2248. 多个数组求交集 数组 easy Java py 4.24 290周赛T1(Y)
20 2249. 统计圆内格点数目 数学 medium Java 4.24 290周赛T2(Y)
21 2250. 统计包含每个点的矩形数目 哈希表
二分
medium Java 4.24 290周赛T3(N)

4.25-5.1(4+13+3=20)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 398. 随机数索引 水塘抽样
随机化
哈希表
medium Java 4.25 4.25每日一题
2 382. 链表随机节点 水塘抽样
链表
随机化
medium Java 4.25 水塘抽样例题
3 2251. 花期内花的数目 差分
二分
hard Java 4.25 290周赛T4(N)、重点学习
4 315. 计算右侧小于当前元素的个数 归并排序
树状数组
hard Java 4.25 学习树状数组
5 883. 三维形体投影面积 几何
数组
easy Java 4.26 4.26每日一题
6 406. 根据身高重建队列 排序
贪心
树状数组
medium Java 4.26 复习、重点关注优化
7 474. 一和零 DP medium Java 4.26 复习、二维限制的01背包
8 221. 最大正方形 DP
矩阵
medium Java 4.26 复习
9 174. 地下城游戏 DP hard Java 4.27 复习
10 905. 按奇偶排序数组 数组
双指针
排序
easy Java 4.28 4.28每日一题
11 1155. 掷骰子的N种方法 DP medium Java 4.28 复习
12 427. 建立四叉树
DFS
前缀和
medium Java 4.29 4.29每日一题
13 1984. 学生分数的最小差值 排序
滑窗
easy Java 4.29 随机一题
14 1447. 最简分数 数学 medium Java 4.29 随机一题
15 300. 最长递增子序列 DP
二分
medium Java 4.29 复习
16 908. 最小差值 I 数学 easy Java 4.30 4.30每日一题
17 910. 最小差值 II 贪心
排序
medium Java 4.30 908相关
18 494. 目标和 DP
回溯
medium Java 4.30 复习
19 518. 零钱兑换 II DP medium Java 4.30 复习
20 1305. 两棵二叉搜索树中的所有元素
DFS
排序
medium Java 5.1 5.1每日一题

5.2-5.8(5+13+2=20)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 88. 合并两个有序数组 双指针 easy Java 5.2 复习
2 937. 重新排列日志文件 字符串
排序
easy Java 5.3 5.3每日一题
3 2259. 移除指定数字得到的最大结果 字符串 easy py 5.3 291周赛T1(Y)
4 2260. 必须拿起的最小连续卡牌数 哈希表 medium Java 5.3 291周赛T2(Y)
5 2261. 含最多 K 个可整除元素的子数组 哈希表
字典树
medium Java 5.3 291周赛T3(Y)
6 2262. 字符串的总引力 DP hard Java 5.3 291周赛T4(N)、需要回看
7 377. 组合总和 Ⅳ DP medium Java 5.3 注意不是完全背包、对比518
8 1823. 找出游戏的获胜者 队列
模拟
medium Java 5.4 5.4每日一题
9 713. 乘积小于 K 的子数组 滑窗 medium Java 5.5 5.5每日一题
10 327. 区间和的个数 树状数组
归并排序
有序集合
hard Java 5.5 重点学习
11 933. 最近的请求次数 队列 easy Java 5.6 5.6每日一题
12 209. 长度最小的子数组 滑窗
前缀和
二分
medium Java 5.6 复习
13 433. 最小基因变化 BFS
哈希表
medium Java 5.7 5.7每日一题
14 718. 最长重复子数组 DP
滑窗
medium Java 5.7 复习、滑窗很赞
15 1143. 最长公共子序列 DP medium Java 5.7 复习、对比718
16 91. 解码方法 DP medium Java 5.7 复习
17 442. 数组中重复的数据 哈希表 medium Java 5.8 5.8每日一题
18 2264. 字符串中最大的 3 位相同数字 字符串 easy Java 5.8 292周赛T1(Y)
19 2265. 统计值等于子树平均值的节点数 DFS medium Java 5.8 292周赛T2(Y)
20 2266. 统计打字方案数 DP medium Java 5.8 292周赛T3(Y)、类似91

5.9-5.15(6+7+3=16)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 942. 增减字符串匹配 贪心
双指针
easy Java 5.9 5.9每日一题
2 1208. 尽可能使字符串相等 滑窗
前缀和
二分
medium Java 5.9 复习、209镜像问题
3 424. 替换后的最长重复字符 滑窗 medium Java 5.9 复习、进一步理解
4 111. 二叉树的最小深度 二叉树
DFS
easy Java 5.10 复习
5 110. 平衡二叉树 二叉树
DFS
easy Java 5.10 复习
6 449. 序列化和反序列化二叉搜索树 二叉搜索树
DFS
BFS
medium Java 5.11 5.11每日一题
7 105. 从前序与中序遍历序列构造二叉树 二叉树
DFS
分治
medium Java 5.11 复习
8 4. 寻找两个正序数组的中位数 二分 hard Java 5.11 复习
9 944. 删列造序 字符串 easy Java 5.12 5.12每日一题
10 32. 最长有效括号
DP
hard Java 5.12 复习
11 面试题 01.05. 一次编辑 双指针 medium Java 5.13 5.13每日一题
12 691. 贴纸拼词 DP
BFS
hard Java 5.14 5.14每日一题
13 812. 最大三角形面积 几何 easy Java 5.15 5.15每日一题
14 2273. 移除字母异位词后的结果数组 字符串 easy Java 5.15 293周赛T1(Y)
15 2274. 不含特殊楼层的最大连续楼层数 数组 medium Java 5.15 293周赛T2(Y)
16 2275. 按位与结果大于零的最长组合 位运算 medium Java 5.15 293周赛T3(Y)

5.16-5.22(4+10+2=16)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 面试题 04.06. 后继者 二叉搜索树
DFS
medium Java 5.16 5.16每日一题
2 953. 验证外星语词典 字符串
哈希表
easy Java 5.17 5.17每日一题
3 56. 合并区间 数组
排序
medium Java 5.17 复习、经典题
4 378. 有序矩阵中第 K 小的元素 二分
归并排序
medium Java 5.18 复习
5 668. 乘法表中第k小的数 二分 hard Java 5.18 5.18每日一题
6 453. 最小操作次数使数组元素相等 数组 easy Java 5.19
7 462. 最少移动次数使数组元素相等 II 数学
排序
medium Java 5.19 5.19每日一题
8 436. 寻找右区间 二分 medium Java 5.20 5.20每日一题
9 2276. 统计区间中的整数数目 有序集合
线段树
hard Java 5.20 293周赛T4(N)
10 961. 在长度 2N 的数组中找出重复 N 次的元素 数学
随机选择
easy Java 5.21 5.21每日一题
11 57. 插入区间 数组 medium Java 5.21 复习
12 2278. 字母在字符串中的百分比 字符串 easy Java 5.22 294周赛T1(Y)
13 2279. 装满石头的背包的最大数量 贪心 medium Java 5.22 294周赛T2(Y)
14 2280. 表示一个折线图的最少线段数 几何 medium Java 5.22 294周赛T3(Y)
15 486. 预测赢家 DP
递归
博弈
medium Java 5.22 复习
16 464. 我能赢吗 DP
状态压缩
记忆化搜索
medium Java 5.22 5.22每日一题

5.23-5.29(4+5+1=10)

这周基本都在忙答辩的事情,所以没怎么刷题,好在结束了,6月份多刷一点,同时也要回顾做过的题目,加油

序号 题目 标签 难度 思路和代码 提交日期 备注
1 907. 子数组的最小值之和 单调栈 medium Java 5.23 2281前置题
2 2281. 巫师的总力量和 单调栈 hard Java 5.23 294周赛T4(N)
3 965. 单值二叉树
DFS
easy Java 5.24 5.24每日一题
4 67. 二进制求和 字符串
位运算
easy Java 5.24 复习
5 467. 环绕字符串中唯一的子字符串 字符串 medium Java 5.25 5.25每日一题
6 1021. 删除最外层的括号
字符串
easy Java 5.28 5.28每日一题
7 468. 验证IP地址 字符串 medium Java 5.29 5.29每日一题
8 6078. 重排字符形成目标字符串 字符串 easy Java 5.29 295周赛T1(Y)
9 6079. 价格减免 字符串 medium Java 5.29 295周赛T2(Y)
10 6080. 使数组按非递减顺序排列 单调栈 medium Java 5.29 295周赛T3(N)、需要回看

5.30-6.5(3+8+5=16)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 1022. 从根到叶的二进制数之和
DFS
easy Java 5.30 5.30每日一题
2 2267. 检查是否有合法括号字符串路径 DP hard Java 5.30 292周赛T4(N)
3 2290. 到达角落需要移除障碍物的最小数目 BFS hard Java 5.30 295周赛T4(N)
4 剑指 Offer II 114. 外星文字典 拓扑排序 hard Java 5.31 5.31每日一题
5 473. 火柴拼正方形 回溯
DP
状态压缩
medium Java 6.1 6.1每日一题
6 450. 删除二叉搜索树中的节点 二叉搜索树 medium Java 6.2 6.2每日一题
7 658. 找到 K 个最接近的元素 二分
双指针
优先队列
medium Java 6.2 复习
8 829. 连续整数求和 数学
枚举
hard Java 6.3 6.3每日一题
9 929. 独特的电子邮件地址 字符串 easy Java 6.4 6.4每日一题
10 31. 下一个排列 数组
双指针
medium Java 6.4 复习
11 40. 组合总和 II 回溯 medium Java 6.4 复习
12 478. 在圆内随机生成点 几何
拒绝采样
medium Java 6.5 6.5每日一题
13 6090. 极大极小游戏 数组 easy Java 6.5 296周赛T1(Y)
14 6091. 划分数组使最大差为 K 数组 medium Java 6.5 296周赛T2(Y)
15 6092. 替换数组中的元素 哈希表 medium Java 6.5 296周赛T3(N)
16 6093. 设计一个文本编辑器 链表 hard Java 6.5 296周赛T4(Y)

6.6-6.12(3+11+2=16)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 729. 我的日程安排表 I 二分
有序集合
medium Java 6.6
2 875. 爱吃香蕉的珂珂 二分 medium Java 6.7 6.7每日一题
3 2064. 分配给商店的最多商品的最小值 二分 medium Java 6.7 类似875
4 41. 缺失的第一个正数 哈希表 hard Java 6.7 复习
5 50. Pow(x, n) 快速幂
数学
medium Java 6.7 复习
6 1037. 有效的回旋镖 几何 easy Java 6.8 6.8每日一题
7 342. 4的幂 数学 easy Java 6.8 复习
8 15. 三数之和 双指针 medium Java 6.8 复习
9 497. 非重叠矩形中的随机点 有序集合
二分
前缀和
medium Java 6.9 6.9每日一题
10 2187. 完成旅途的最少时间 二分 medium Java 6.9 2064同类题
11 115. 不同的子序列 DP hard Java 6.10 复习
12 926. 将字符串翻转到单调递增 DP medium Java 6.11 6.11每日一题
13 890. 查找和替换模式 哈希表
字符串
medium Java 6.12 6.12每日一题
14 5259. 计算应缴税款总额 数组 easy Java 6.12 297周赛T1(Y)
15 5270. 网格中的最小路径代价 DP medium Java 6.12 297周赛T2(Y)
16 5289. 公平分发饼干 DP
DFS
medium Java 6.12 297周赛T3(N)

6.13-6.19(4+10+5=19)

序号 题目 标签 难度 思路和代码 提交日期 备注
1 1051. 高度检查器 计数排序 easy Java 6.13 6.13每日一题
2 1365. 有多少小于当前数字的数字 计数排序 easy Java 6.13 复习
3 498. 对角线遍历 矩阵 medium Java 6.14 6.14每日一题
4 940. 不同的子序列 II DP hard Java 6.14
5 264. 丑数 II 多路归并 medium Java 6.14 复习
6 719. 找出第 K 小的数对距离 二分
双指针
hard Java 6.15 6.15每日一题
7 523. 连续的子数组和 前缀和
数学
medium Java 6.15 复习
8 76. 最小覆盖子串 滑窗 hard Java 6.15 复习
9 532. 数组中的 k-diff 数对 双指针
哈希表
medium Java 6.16 6.16每日一题
10 567. 字符串的排列 滑窗
双指针
medium Java 6.16 复习
11 1089. 复写零 双指针 easy Java 6.17 6.17每日一题
12 79. 单词搜索 回溯 medium Java 6.17 复习
13 剑指 Offer II 029. 排序的循环链表 链表 medium Java 6.18 6.18每日一题
14 10. 正则表达式匹配 DP
递归
hard Java 6.18 复习
15 508. 出现次数最多的子树元素和 DFS
哈希表
medium Java 6.19 6.19每日一题
16 2309. 兼具大小写的最好英文字母 字符串 easy Java 6.19 298周赛T1(Y)
17 2310. 个位数字为 K 的整数之和 贪心
数学
medium Java 6.19 298周赛T2(Y)
18 2311. 小于等于 K 的最长二进制子序列 字符串 medium Java 6.19 298周赛T3(Y)
19 2312. 卖木头块 DP hard Java 6.19 298周赛T4(N)