题型分类不是背标签,而是训练识别能力
很多人一说题型分类,第一反应是:
很多人一说题型分类,第一反应是:
- 这题是双指针
- 那题是动态规划
- 另一题是二分
但如果分类只停留在“背标签”,价值其实很有限。
真正有用的分类是什么
有用的分类不是为了考试时喊出名字,而是为了快速判断:
- 这题大概属于什么结构
- 我应该优先尝试哪一类思路
- 哪些方法大概率不适合
也就是说,分类的核心不是记忆,而是识别。
我更建议的分类方式
按“问题结构”分
比如:
- 是区间问题,还是路径问题
- 是局部贪心,还是全局最优
- 是状态转移,还是关系搜索
- 是顺序扫描,还是回溯枚举
这种分类比“背题名”更有迁移价值。
按“突破口”分
很多题真正难的地方不是方法本身,而是看不到突破口。
所以复盘时更值得记录:
- 是通过排序降低复杂度
- 是通过哈希换时间
- 是通过单调性启用二分
- 是通过状态定义进入动态规划
一旦你对这些突破口更敏感,识别能力会比单纯刷题提升得快。
为什么有人刷很多题还是不会分类
通常是因为做完题之后,脑子里留下的只有“答案长什么样”,而不是“为什么会想到这个方向”。
这样一来,下一道稍微换个外壳的题,原来的方法就找不到入口。
一个更有效的做法
每做完一道题,都多回答一个问题:
如果以后我再遇到一题类似结构,我应该先观察什么?
比如:
- 看有没有单调性
- 看有没有重复子问题
- 看是否要维护一个窗口
- 看是否存在前缀信息复用
这类问题回答得越多,你越容易形成真正的识别能力。
结论
题型分类真正的价值,不是让你知道题属于哪个名字,而是让你在陌生问题面前更快发现:
我应该先从哪一类思路开始试。