刷到LeetCode day10的时候我第一反应不是“我坚持了十天”而是“我是不是该换个方式刷题了”。前九天我几乎每天打卡题量看起来不少可合上电脑真正能让我脱口而出完整思路的题目并没有想象中那么多。这种“打卡式自我感动”在第10天被彻底暴露出来。这篇记录想写给你看的是当刷题进入到第10天这个节点题目选择、时间分配、复盘方式都该发生一次调整。它不再适合靠新鲜感驱动而是要切换到“模式识别 主动回忆 错题管理”这套更稳的节奏里。如果你也在坚持刷题或者刚刚重新开始你会发现这个节点比第3天重要得多——第10天是第一个真正能拉开差距的拐点。1. 为什么day10是最容易断更的节点我如何看待这个问题1.1 前9天的热情曲线第10天会迎来第一次低谷很多刷题的人都会经历这样一个过程第1到3天鸡血满满每天恨不得刷四五道题看到提交通过就兴奋第4到7天开始遇到坎一道中等难度的题目可能要耗上一个小时第8到9天进入“完成任务状态”想着今天打卡保底随便找一道简单题糊弄过去等到第10天心里就开始冒出一个非常危险的念头我刷了这么多题为什么还是觉得不会做其实这不是错觉。前9天的“会做”很大程度上是“照着题解做”或者是“看到了曾经见过的题型套上去试一下”。真正合上电脑从零开始分析一道陌生题目很多人根本组织不起来系统化的思路。这种落差在第10天集中爆发于是断更也往往发生在第10天前后。我不觉得这是意志力的问题而是方法在前期立不住。1.2 我把day10视为“从积累到结构化”的分界线这里我想说一个很关键的理解前几天的目标可以是“多见题”但从第10天开始目标必须改成“建立题目的模式索引”。举例来说你第一次接触“两数之和”时只知道要暴力双重循环第二次接触“需要快速查找是否存在”时才慢慢意识到哈希表的价值到第10天你已经不该再把它当成一道单独题目看而应该把它归类为“用空间换时间的典型模式”。和生活中整理房间一样衣服堆成一团时你觉得自己什么都有真要出门时却什么都找不到刷题也是一样题目如果只是以“做过的列表”形式堆在脑子里它们其实是散的。第10天需要的不是继续往里堆题而是把已经做过的题目重新在脑子里做一次分类、归纳。这个过程很难用刷题量去衡量但后续的进步速度恰恰取决于这一步有没有做扎实。1.3 我给第10天定的三条硬规矩为了不让自己继续沉在“数量幻觉”里我从第10天开始给自己立了三条规矩第一每天最多只做两道新题加一道旧题重做第二新题若超过25分钟没有实质进展就主动看题解不硬耗第三做完题必须用一句话概括“这题考什么模式”写在记录里。这三条听起来简单执行起来最大的阻力是“不甘心”——总觉得今天只做两题是在偷懒。但实际操作下来两道新题如果吃得足够透效果远超随手刷五道不同标签的题。2. 第九天后我开始重新选择刷什么题2.1 热题榜刷越多越容易出现“假熟悉”前9天我刷的基本都是热门题。这些题确实经典覆盖了常考的数据结构和算法但热题榜的顺序并不符合学习曲线。今天做一道数组题明天跳到一个链表题后天又遇到动态规划大脑完全没有足够时间去消化一个“套路族”。结果就是每道题看着都眼熟但真让我不看题解写出来我就卡住了。这种状态持续到第9天晚上我复盘前几天的笔记发现一个规律凡是连续多天围绕同一类型题目练习的后面做题时的正确率明显更高凡是今天链表、明天树、后天贪心乱跳的过几天再回头看基本全忘了。2.2 我把专题切换成“高频套路打包练习”所以从第10天起我调整了选题策略一次只集中打一个专题比如“哈希表 数组”这个组合先进行5天把相关的高频题过一遍再来“双指针 字符串”然后是“链表操作”。每个专题至少覆盖10道题做完之后再切下一个。这样做的真正好处不是让你变强是让你把同一个解题模式翻来覆去用到形成肌肉记忆。举一个很常见的例子同样是数组相关的题哈希表专题里你会反复遇到“检查某个元素是否出现过”双指针专题里你会反复遇到“从两侧往中间夹逼”。如果按热题榜随机刷这两种模式都是“偶尔露面”按专题集中刷它们会从陌生技巧变成你下意识的第一反应。第10天我特意验证了一下仅用一天时间集中做了“删除排序数组中的重复项”“移动零”“反转字符串”三道题全部是双指针思路做第三道时已经不需要再翻笔记这就是打包练习的复利。2.3 难度配比为什么我坚持“两简单一中等”而不是“一日三困难”前9天我也干过“中午一道中等题晚上一道困难题”的傻事结果正确率惨不忍睹。第10天我把标准改成“每天两道简单题热身加一道中等题核心攻坚”周末再单独挑战一道困难题。简单题用来强化基础模式保证每天都有正向反馈中等题用来扩展思维边界困难题只作为阶段测验不作为日常消耗。这不是逃避困难题目而是考虑到“坚持”这个成本。刷题最怕的不是某道题难而是你连续几天被打击到不想打开编辑器。难度配比一旦合理每天结束时的感觉是“今天学到东西了”而不是“今天又失败了一次”。长期下来这种心理体验比单纯刷难题重要得多。3. 第10天开始的节奏控制每天90分钟这样拆3.1 时间块拆解读题、独立尝试、看题解、复盘各司其职很多人刷题是一坐一下午或者碎片化地“有一道算一道”这两种方式在第10天之后都效率低下。我先说结论我建议每天固定90分钟左右并且把时间切块。时间段任务目的0-10分钟读懂题目尝试给出暴力解法确保理解题意初步判断难度10-35分钟独立编写代码不翻题解训练紧张状态下的思考能力35-50分钟对照题解理解更优解法找出自己的思维盲区50-70分钟不看题解重新实现一遍验证是否真的吸收70-90分钟在笔记中记录思路、卡点与模式积累可搜索的复盘材料这里的核心不是把每道题都做到最优才能进入下一题而是要严格限制“独立尝试”的时间上限。以我的经验35分钟还没有实质进展的题目说明你大概率缺失一个前置套路这时候再看题解反而能收获更明确的“要补什么”的信息而不是毫无目的地死磕。3.2 判断“该不该看题解”的量化标准许多刷题人有一个误区认为看题解是意志力薄弱的表现。但成年人学习最忌讳的其实是“表演式努力”——你坐在那里抠一道题三个小时看似很努力实际上真正有用的可能只有前30分钟的思考后面170分钟都在消耗情绪。我给自己定了一个明确标准如果你已经给出了暴力解法同时又能准确说出现在的时间复杂度是O(n²)但就是想不出更优方案那就说明你缺的不是逻辑推演能力而是缺某个既定套路。这时候看题解是高效的。反过来如果连题目都没读懂甚至边界条件都还没想清楚那就继续把这道题放下换一道更基础的同等知识点题目而不是硬把题解抄下来假装会了。3.3 隔天断更的损失比想象中的大第10天也是“要不要休息一天”的摇摆期。我的体感是刷题最忌讳隔天哪怕某天实在很忙也至少要拿出来20分钟复盘旧题或重写一道做过的题。因为算法思维本质上是一种“状态”一旦中断第11天重新起步的启动成本会吃掉之前积累的第二天的收入。我在前9天曾经因为临时有事空过一次那次之后花了两天才恢复到原有状态。所以如果你问我第10天最需要坚持的是什么我会说坚持“每天接触代码”这个最低标准。好状态是连续性的产物断一次不远断两天以上就基本归零了。4. 复盘记录的正确姿势从“记答案”到“记卡点”4.1 为什么说一句“卡在哪一步”胜过十行笔记很多人的刷题笔记是这样的题目编号、自己的代码、题解的代码、一些红字标注“这题要用双指针”。这种笔记的问题在于它记录了结果没有记录过程。等到第15天翻回去看你只会看到“哦这题做过”却完全想不起当时是哪一步把自己卡住的。从第10天开始我要求自己的笔记中心必须落在“卡点”上。所谓卡点就是你思考停止的那个具体位置。比如是没意识到要排序是没想到可以用双指针移动还是想到了双指针但边界条件处理错了这三者的补强动作完全不同前者是思维盲区中者是经验缺失后者是细节训练。把卡点写出来你的复习才会有针对性。4.2 我一直在用的错题日志模板下面是我摸索出来、每天都在用的记录模板供你参考。不要追求漂亮追求“下次能看懂”。日期第10天题目某数组去重类问题类型标签数组 / 双指针我的卡点想到用双指针但没有想到慢指针可以充当写入位置解法一句话快指针遍历慢指针维护有效区间的末尾复杂度O(n)O(1)相似模式原地修改数组 / 覆盖写入下次复习5天后写完之后我会在晚上或者第二天早上花15分钟把这张卡片看一遍。看得多了你会发现自己的卡点是有规律的有人总死在边界条件有人总死在状态定义模糊。认清自己的短板模式之后后续刷题会变得异常清晰——你始终知道自己在补那个具体的坑而不是乱枪打鸟。4.3 用“主动回忆”代替“反复阅读”记录做得再好如果复习方式是“把笔记从头读一遍”效率依然很低。第10天我认真试过一个方法不打开笔记先凭记忆在纸上画出那道题的思路框架再对照原笔记找差距。这个动作非常费脑但正是这种费力才让记忆牢固。就好像背单词盯着抄十遍不如合上书回忆一遍来得扎实。针对第10天这个特殊时间点我强烈建议你把第4天到第7天做过的题拿出来重做。那几天正处于“见了很多题但还没消化”的窗口期现在重做既检验了这3天的进步也能把当时模糊的记忆固化成真正的能力。不要怕“已经做过了”就浪费时间真正拉开差距的复利恰恰发生在这些回头看的时刻。5. 第10天之后我优先补的三个能力5.1 复杂度分析不再停留在“背公式”前9天做题时我经常写完代码就开始自嗨完全没想它的复杂度。第10天我发现一个尴尬事别人问“你这段代码为什么是O(n)”我虽然能说出来但并没有真正理解。这个“没真正理解”在写复杂算法时会变得非常致命因为你无法判断自己的解法是否合格。从第10天起我给自己定的规矩是每道题写完代码之后必须亲手推导一遍时间复杂度和空间复杂度。复杂度的计算逻辑并不复杂看循环嵌套层数、看是否有额外存储结构、看递归深度。当你每道题都花两分钟认真推导一次两周之后你会对“什么解法可行、什么解法会超时”形成直觉。5.2 限时训练从“能做对”到“在规定时间里能做对”面试里最残酷的事情不是你不会而是你知道怎么做但时间不够。第10天正好是引入限时训练的好时机——前面几天的新鲜感足够让你熟悉平台操作现在开始练“速度”才不会显得突兀。我的做法每天三道题里挑出一道中等题设置25分钟倒计时时间一到无论做没做完都停笔。刚开始你会非常慌因为25分钟写不完一道中等题是常态。但不要紧这种紧张状态本身就是训练目标。练到后面你会发现自己的思考路径越来越短第一反应越来越准这才是“会做”和“能过面试”之间的真正距离。5.3 把思路讲出来镜子前的三分钟最后一个能力是表达。第10天我开始尝试一个很多人忽略的动作把一道题的解法像讲课一样讲出来哪怕只是对着空气。这个动作的价值在于讲不出来就意味着还有盲区。比如你代码写对了但问你“为什么双指针在这里会停下”如果支支吾吾说明你并没有真的吃透。语言是对思维的强制梳理表达能力本质上就是解题能力这一条越早意识到越占便宜。6. 写在最后给同样刷到第10天的你如果你正好也处在LeetCode day10附近我想说一件事别焦虑进度别对比数量。有人一周刷50题有人一周刷14题但第30天回头时真正留下深刻理解和稳定能力的往往是后者。刷题不是集邮而是训练一种快速建模的能力第10天这个位置不是终点也不是瓶颈而是你开始从“见过题目”转向“理解题目”的起点。我个人在day10收获最大的一步是把每天的题量降下来同时把“复盘”的优先级提上去。那是一种很奇怪的感觉——刷得少了反而觉得自己变得更强了。如果这篇文章只能留下一个建议我会说从今天开始题做完不算完把卡点写下来。坚持10天你会回来感谢那个认真复盘的自己。