Skip to content

算法刷题方法论:从一道题刷三遍到三遍刷一道题

大一下开始刷 LeetCode,断断续续刷了 100 题左右。前期进步慢,后来调整方法后效率明显提升。这篇总结我的刷题方法论,核心就一句话:质量远比数量重要

三个阶段的误区

误区1:贪多求快

一开始我每天刷 5 题,按难度排序从易到难刷。一个月刷了 100 题,但回过头看,刷过的题大部分只能记住"做过",根本不会重写。这是典型的"假装努力"。

误区2:看题解过早

一道题卡 10 分钟就去看题解,看完觉得"哦懂了",下次遇到同类还是不会。没经过痛苦思考的题解,记不牢

误区3:不分类

按题号刷,今天 DP 明天图后天字符串,知识点无法形成体系

我现在的刷题方法

一题三刷

  • 第一遍:限时 30 分钟独立思考,做不出就看题解的思路(不看代码),自己写
  • 第二遍(3 天后):不看任何提示重写,写不出说明没真懂,回到第一遍
  • 第三遍(1 周后):尝试多种解法,比较时空复杂度,写最优解

按专题刷

按知识点专题推进,而不是按题号:

  1. 数组 / 双指针 / 滑动窗口
  2. 链表 / 栈 / 队列
  3. 二叉树 / BFS / DFS
  4. 回溯
  5. 动态规划(一维 → 二维 → 状态压缩)
  6. 图论基础

每个专题刷 15-20 题,集中突破一个知识点,比散着刷效率高 10 倍。

写题解笔记

每道题用自己的话写 3 句话:

  • 这题考什么
  • 我的解法核心思路
  • 踩了什么坑

笔记不公开,只为强化记忆。用自己的话复述,是检验是否真懂的最好方式

工具推荐

  • LeetCode 官网:英文版讨论区题解质量更高
  • labuladong 算法小抄:框架思维,适合入门
  • 代码随想录:按专题分类清晰

心态

刷题是最反"突击"的事,每天 1-2 题坚持半年,比一天 10 题刷两周强太多。把它当成每天的"脑力体操",而不是任务。

算法不是面试的全部,但是过笔试的硬门槛。耐心刷,量变会引发质变。

最后更新于:

基于 VitePress 构建 · 勤于思,践于行 · RSS 订阅