为什么要刷
算法是很重要的基础素质,而且也能保持你的思维状态.
可能你在工作中,很多业务,很难用得上算法.但我十分赞同用算法考量一个人的基本素质和能力,当然另一半应该是项目经验.
现实点说,现在国内的公司越来越注重算法,比如头条.
算法决定了你思考复杂问题的能力,如果你不想仅仅做一个增删改查工程师.
如何刷
第一阶段 攒数量,找感觉
在30-50道题以前,我觉得你可以随机刷,找easy做,或者medium都可以.当然如果你基础好可以跳过这一阶段.
第二阶段 进阶
找最常见的面试题目
在leetcode网页上是有总结的,题量大概100左右,适合进阶
办个会员找公司题库刷:
这肯定更有针对性
以上过程中,你的要刷的库已经固定了,在150左右,你可以再在leetcode上点分类,比如先从链表开始刷,也可以随机刷.
第三阶段 总结+扩充刷
失败不是成功的亲娘,总结才是.
这是你的题量应该在150+了,一般一个公司的题库,除了外企谷歌那种400+道的,两年内的不会超过150道.
你需要总结了.
每一个刷过的题,除了太简单的,建议写写题解,刷的时候先把md文件建立起来.
每一道题,你不看题解完全独立做出来,熟悉度是1,独立两次就+1,不能就是小于1.我这里是按照公司分类的.
在上面的图中,你已经看到了分类,是的,复习时候,我推荐分类复习.这样效果比较好.
同时,对每一类问题,比如二分,比如排序.对于基本思想,常见的用法和写法,建议有自己单独总结的一个文档.
比如:
资源推荐
leetcode中国版 会员便宜了一些,可以看题库.
别问点就行了
提醒
看再多,别人写的再好都不会是你的,可以参考,但自己想,自己写,强过一切.
关于博客
最近在迁移,我的总结文章我会在1周-2周内弄好.