力扣“兔系”刷子

做一把力扣兔系刷子

龟与兔

刷leetcode可以分为两种派系,分别是龟与兔。龟们通常将刷leetcode作为一种习惯,每天起床之后来一发。龟们更注重的是题目做干净。题目做多之后就会发现其实也就那么多套路,但是即便是明确了算法,能不能准确实现,做到bug free, 能不能继续优化,数据结构是否合理同样也是很考验人的问题。因此龟系常常不满足于简单的accept,而是追求极致,做一题杀死一题。leetcode给了题目答案的运行时间分布统计,每个波峰都代表了一种特定复杂度的算法,每次都要朝着前面的波峰去努力,使用最优的数据结构,一出手就做到最优选择。

兔系更符合刷子的概念,就是按标签刷,按公式刷,按类型刷。这种方法挺起来很暴力,但实际上是最有效率的做法之一。很多大牛能够做到,拿到题目不思考,直接在自带编辑框开始编码,而且还基本上做到bug free。兔子们讲求不疯魔不成佛,第一遍的时候拿起来题目思考个五分钟,然后就开始看答案,照着答案写。什么动态规划,二叉树,线段树,并查集,贪心算法,到后来所谓的不看答案自己做出来,其实都是在用固定套路。到最后你看那些acmer高手,看似思路很快,其实就是知道的套路比你多,而且不是多一点。

既然明确了是为了找工作的目标,那就放下矜持,放下承见,拿到offer比什么都强,哪怕是以一种羊癫疯的姿势。

计划

整体上对题目做到三刷,
第一遍: 先思考,然后看参考答案刷,结合其他人的答案刷,思考最优解与自己解法的区别,掌握本体类型以及解题方式

第二遍: 思考最优解法,这一遍尽量不看答案,将写出来的代码与之前的代码作比较,总结问题的方法

第三遍:提升刷题速度,拿出题目知道其考察重点,短时间能够在白板上写出答案

细节部分

  1. 每一遍都要按照难度从低到高,分类别去刷,并做好定期复刷。第一遍完成之后能够做到对基本的题目类型有个全方位的把控,熟悉所有数据结构的基本使用方法。

  2. 给自己定个闹钟,每道题目在15min内想不出来,不要为难自己,这个时间足够将所有已知知识枚举一遍。

  3. ac之后检查运行时间,慢就去discuss查看他人解法思路,并重写提交。 当代码比较繁杂,逻辑不清晰,有明显其他解法也要查看

一些工具:

动画形式演示题目:https://link.zhihu.com/?target=https%3A//github.com/MisterBooo/LeetCodeAnimation
国内版:https://link.zhihu.com/?target=https%3A//leetcode-cn.com/
国际版:https://link.zhihu.com/?target=http%3A//leetcode.com/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值