Skip to content

LeetCode 高效刷题方法

刷题不是越多越好,关键是有方法、有节奏、有复盘。很多人刷了 300 道题,遇到新题还是没思路;有些人刷了 100 道,却能举一反三。区别不在于数量,在于方法。

为什么你刷题效率低

常见的低效刷题模式:

  • 按顺序刷:从第一题刷到最后一题,没有分类,遇到不会的就死磕
  • 只看答案:看完觉得自己会了,过两天再做一遍还是不会
  • 不总结套路:每道题都是独立事件,没有提炼通用模式
  • 不做复盘:错了就错了,下次还是犯同样的错误

刷题的核心目标不是「刷完多少道」,而是「遇到新题能快速找到思路」。

高效刷题方法论

方法一:分类专题刷法

刷题最有效的方式是按题型分类,每类集中突破

推荐刷题顺序(按题型):

第一轮:数组 + 哈希表(最基础,题型最多)
第二轮:链表(指针操作)
第三轮:二分查找(边界条件是难点)
第四轮:滑动窗口 + 双指针
第五轮:栈和队列(单调栈是高频难点)
第六轮:二叉树(递归是核心)
第七轮:回溯(组合、排列、N皇后)
第八轮:动态规划(最难的专题)

每个专题吃透之后再进入下一个,而不是混着刷。

方法二:模板刷法

每类题型都有固定套路,把套路提炼成模板,遇到新题直接套。

双指针模板:

java
// 对撞指针
int left = 0, right = nums.length - 1;
while (left < right) {
    if (condition) return result;
    else if (nums[left] + nums[right] < target) left++;
    else right--;
}

// 快慢指针
int slow = 0;
for (int fast = 0; fast < nums.length; fast++) {
    if (condition) {
        nums[slow] = nums[fast];
        slow++;
    }
}

单调栈模板:

java
Deque<Integer> stack = new ArrayDeque<>();
for (int i = 0; i < n; i++) {
    while (!stack.isEmpty() && nums[i] > nums[stack.peek()]) {
        int idx = stack.pop();
        result[idx] = i - idx; // 计算结果
    }
    stack.push(i);
}

遇到新题时,先问自己:这道题属于哪个专题?能用哪个模板?

方法三:三遍刷题法

每道题至少做三遍,才能真正变成自己的。

第一遍(理解): 读题,想思路,尝试写代码。如果 15 分钟没思路,看答案理解思路,然后自己写一遍。标记:🟡 中等 / 🔴 困难。

第二遍(巩固): 隔一天后重新做这道题,不看答案,独立完成。如果 10 分钟内没有思路,说明还没掌握。标记:🟢 熟练。

第三遍(提速): 一周后再做,目标是优化时间复杂度和空间复杂度,练习多种解法。标记:✅ 掌握。

方法四:面试倒推刷题

如果是为了面试,可以按面试高频率刷题:

必刷(面试出现率 > 50%):

  • 两数之和(哈希表)
  • 合并两个有序链表
  • 二叉树的中序 / 前序 / 后序遍历
  • 反转链表
  • 有效的括号(栈)
  • 爬楼梯(动态规划)
  • 二叉树最大深度

高频(面试出现率 > 30%):

  • 三数之和(双指针)
  • 接雨水(单调栈)
  • 最小栈(辅助栈)
  • 二叉树的层序遍历
  • 每日温度(单调栈)
  • LRU 缓存(哈希表 + 双向链表)
  • 岛屿数量(DFS/BFS)

刷题节奏建议

每日安排

时间段内容
前 30 分钟复习昨天的一道困难题
后 1-2 小时按专题刷 2-3 道新题
睡前 10 分钟在脑子里回顾今天学的题型模板

周复盘

每周日做一次复盘:

  1. 本周刷了哪些题型?
  2. 哪些题型已经完全掌握?
  3. 哪些题型还不熟练,需要继续练?
  4. 错题的原因是粗心还是思路不对?

刷题心态

不要怕困难题。 第一次遇到 Hard 题没思路是正常的,先看答案理解,再自己写,最后背模板。

不要比数量。 刷了 500 道但每道都只做一遍,不如刷 200 道但每道都做三遍。

不要死磕。 一道题超过 30 分钟还没思路,直接看答案。看完答案后,闭卷重写一遍,比死磕效率高得多。

不要忽视简单题。 简单题不是没用——简单题练的是代码实现能力和边界处理。很多人的简单题其实不够熟练,导致简单题丢分。

总结

刷题的核心公式:

高效刷题 = 分类专题突破 + 模板提炼 + 三遍法则 + 定期复盘

不要追求刷了多少道,要追求遇到新题能快速找到思路。把每一道题做透,比囫囵吞枣刷 500 道题有用得多。

基于 VitePress 构建