程序员刷 leetcode 经常陷入刷了忘忘了刷的尴尬局面怎么办?

本文强调了在刷算法题时理解解题思路的重要性,而非单纯记忆答案。建议通过回忆解题思路来检验掌握程度,并在刷题时深入理解知识点。提倡在看题解时思考算法设计背后的原因,如为何使用特定数据结构或算法。对于初学者,应按知识点刷题,结合理论学习,并重点关注基础和高频问题,提高面试表现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、刷了忘的原因是:没有真正理解解题思路

解题不应该要求做过的问题都能记住答案。忘了说明以前做的时候就没有真正理解,试图回忆解题步骤是不正确的,应该尝试回忆解题思路。但更有效的做法是 在刷题的时候就深刻理解解题思路。

检验一道问题是不是真正掌握,正是须要在我们完全忘记了解题思路以后,如何一点一点通过题目的条件分析出解题的思路、用到的算法和数据结构。

二、多想想为什么,而不要记住是什么

刷题就是一遍一遍做题,巩固知识点的过程。平常做题的时候没有思路,看题解是非常正常的。但是我们在看题解的时候,不要只看解法,记住算法,而应该去思考算法为什么这样设计。多问一问自己:

为什么想到「二分查找」、为什么想到「滑动窗口」、为什么想到「双指针」?
为什么想到用哈希表记录已经遍历到元素;
为什么求最短路径用「动态规划」和「广度优先遍历」、为什么有一些最优化问题可以用「贪心算法」,直觉来自哪里,如何证明?

三、零基础刷题的正确方法

1.按知识点刷题

在这里插入图片描述

2. 刷题和理论知识学习结合

面试考察的算法和高考数学题一样,都有固定考察的知识点。因此我们在准备面试(笔试)的时候,可以按照知识点各个击破。「力扣」的 学习 板块就有很多已经分好类的免费的教程。也可以在「力扣」中按照标签筛选同类问题,逐个掌握每个知识点的思考路径。

在这里插入图片描述

遇到不会的问题可以看题解,题解中如果遇到不会的知识点就须要查资料进行学习,知识点的学习找任何一本介绍算法的书籍或是网络教程都可以。学习完以后还要不断做题以巩固知识点。

四、抓大放小,提高刷题效率

题目很多,没有必要要求自己全部都掌握、全部都会做。在准备算法面试的时候,在时间有限的前提下,应该注重基础算法、数据结构、常见(高频)问题的准备,不应该只满足于做对这个问题,而应该以 能够在面试的时候清晰地向面试官表达解题思路 为目标,因为面试是和面试官的对话,仅仅把代码写对是不够的。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

善守的大龙猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值