刷题清单¶
目标:看到题目就知道用什么模板
一、链表¶
基础必会¶
- 21 合并两个有序链表 - 双指针基础
- 206 反转链表 - 必背模板
- 141 环形链表 - 快慢指针
- 19 删除链表的倒数第 N 个结点 - 快慢指针进阶
进阶题¶
- 92 反转链表 II - 部分反转
- 142 环形链表 II - 数学推导
- 25 K 个一组翻转链表 ⭐ - 分组反转
二、二叉树¶
遍历类¶
- 102 二叉树的层序遍历 - BFS 入门
- 144 二叉树的前序遍历
- 94 二叉树的中序遍历
- 145 二叉树的后序遍历
性质类¶
- 104 二叉树的最大深度
- 101 对称二叉树
- 226 翻转二叉树
- 112 路径总和
- 110 平衡二叉树
- 98 验证二叉搜索树 ⭐ - BST 核心
- 543 二叉树的直径 - 递归思维
- 236 二叉树的最近公共祖先 ⭐
三、数组 / 字符串¶
滑动窗口¶
双指针¶
- 26 删除有序数组中的重复项
- 27 移除元素
- 88 合并两个有序数组
- 11 盛最多水的容器
- 15 三数之和 ⭐ - 双指针经典
四、栈 & 队列¶
- 20 有效的括号
- 155 最小栈
- 232 用栈实现队列
- 225 用队列实现栈
- 739 每日温度 - 单调栈入门
五、二分查找¶
六、回溯¶
七、动态规划¶
入门必做¶
经典题型¶
- 322 零钱兑换 - 完全背包
- 300 最长递增子序列
- 5 最长回文子串 - 区间 DP
- 1143 最长公共子序列
八、图论(BFS/DFS)¶
九、进阶高频(理解即可)¶
- 146 LRU 缓存 ⭐ - 哈希表 + 双向链表
- 208 实现 Trie (前缀树)
- 124 二叉树中的最大路径和
- 84 柱状图中最大的矩形 - 单调栈
- 42 接雨水 ⭐ - 双指针/单调栈
推荐刷题节奏¶
每天 1 小时(5-6 题)¶
周一至周五(基础巩固):
- 1 题链表/数组
- 1-2 题二叉树
- 1 题滑动窗口/双指针
- 1 题栈/队列/二分
周末(专题突破):
- 3 题 DP(同一类型)
- 2 题回溯/图论
三遍刷题法¶
- 第 1 遍:看题解,理解思路,能写对
- 第 2 遍:不看答案,独立完成
- 第 3 遍:边写边讲,能给别人讲清楚
进阶建议¶
- 一题多解:尝试不同解法(暴力 → 优化 → 最优)
- 总结模板:相同类型题目提炼通用模板
- 定期复习:每周回顾本周错题