昨天是元宵节,过完元宵节相当于这个年正式过完了。不知道大家有没有投入继续投入紧张的学习工作中。年前我想开一个Leetcode刷题专栏,于是发了一个投票想了解大家的需求征集意见。投票于2019年2月1日截止,共有204人参加,根据投票结果显示,大多数人希望通过刷LeetCode能够提高代码水平,在工作中和面试中有帮助,然而有一半人没有接触过Leetcode,一半人接触过,但只刷了一点。几乎所有投票的人刷题的数量都小于100题,说明大家对刷题的认识和热情都还比较浅,可能是因为刷题比较枯燥,又不能马上带来立竿见影的效果,所以不能长期坚持下去。对于本专栏的形式,有一半人希望以专题的形式,先讲知识点,再举例包含该知识点的题,每周发布一篇,其次希望建立微信打卡群,大家一起刷题打卡,相互讨论。大家会的编程语言以python、c++、java(排名分先后)为主,并希望建立一个月或者三个月的刷题计划,并加入计划和打卡群中。

 


  从微信投票结果来看,我发现大家的刷题经验相对比较少,可能是不知道刷题能带来哪些直接的好处,大多数除了面试前刷一些,平时工作中可能压根不会碰。经历了去年的裁员潮后,现在这个时间,可能很多人处于待业找工作或者已经开始找工作的状态,一般对于跳槽而言,通常有种说法,叫金三银四和金九银十,所以如果想要换工作的同学,这个时候正是刷题的好时候。众所周知,LeetCode是一个刷题网站,在16年左右的时候还只有400题左右,结果17、18年数量激增,现在已经有996道题,这么多道题,我们是不是需要都刷完,如何在短时间内快速刷完,尽量不遗漏重要知识点,刷题方法和顺序是很重要的。我本人的刷题经验并不多,之所以开这个专栏也是希望和大家一起刷题打卡,争取在有限的时间内刷完基本的题型。

 

专栏规划

*
时间:两个月。2019年2月20日~2019年4月21日

*
计划目标:Leetcode前400题。(前400题基本包括了绝对大部分题型,反复刷2~3遍面试数据结构这块基本不会有什么大问题)

*
专栏形式
:每周四周五发布知识点和题型讲解(后面会公布整个刷题计划的思维导图和时间安排),然后将包含该知识点的题目放出来让大家刷,周一~周三会抽一天针对微信打卡群里的问题写一篇总结发在微信群里。

*
参与形式
:文末会放出刷题打卡群,参与者需付费99元参与,放入奖金池,最后按照坚持下来的人数平分这个奖金池。如果能坚持到最后刷题结束,99元入群费原封不动退还,如果有人没有坚持下来,就作为奖金池的一部分最后平分。举个例子,如果有100人参与,每人99元,奖金池为9900元,两个月后只有50人坚持下来,那么每人平分下来就是198元。

*
刷题网站
:www.leetcode.com  本刷题专栏主要用英文版Leetcode刷题(有中文版力扣,但是相对于英文版的Leetcode,少了Discuss区,这里面有很多精华,所以建议大家用英文版刷题)。所以大家在英文版Leetcode官网上注册一个账号,最好是空白账号,把以前的记录都清零,从头开始。

*
如何检查
:每周五在群里统计上周每人刷题的数量,大家自己在群里自爆,发submission截图,然后我统计到excel里看每周大家的刷题情况。(如果有更好的方式也欢迎提建议,我的检查方法主要靠自觉
- -)

*
微信群规:因为是第一次建打卡群,所以不希望这个群最后流于形式,大家设置一个消息免打扰就忘记刷题了。所以我初步拟定了几条群规,希望参与的人能遵守:


1.本群不要发广告,不要开车,不要发与刷题无关的内容!发一次提醒,两次直接踢。我希望大家刷题就好好刷题,不要在群里发一些乱七八糟的东西,希望大家能理解。可以发每天刷题遇到的问题,或者坚持不下来了想求助也可以,也可以发在公司面试时遇到的题目等都可以。

    2.每周四周五放出刷题知识点和题型总结,然后下周五下午五点以前,大家汇报自己的刷题进度+submission截图,我周六统计后,公布还在坚持的人数。

    3.和气谈论,就事论事,不要人身攻击。

*
入群方式:(截止时间:2019年2月28日)

添加我的微信:journey77824   备注:leetcode刷题

微信转账99元,我拉你入群。群费我会存入微信零钱里,每周公布一次剩余人数和群费。

 

 

LeetCode前400题思维导图

    思维导图如下



 

 


注:思维导图的内容和顺序可能会不断修改,在我的github中会不断更新leetcodebook-github(https://github.com/huxiaoman7/leetcodebook)

 

 

两个月刷题计划安排


    两个月的时间还是比较紧张的,除了我每周四、周五会在公众号定期发布知识点和题型总结外,平时也需要多练习。前四周以基础数据结构为主,包括数组、链表、栈与队列、二叉树与图、字符串以及其他数据结构(set、map、hash等)。后四周主要以算法为主,包括排序算法、二分查找、搜索算法、动态规划这些常见的算法,最后一周安排的是数学类题目,和其他常见的题型总结。具体的时间安排如下:

 



 

 

Q&A

*
1.如果我的基础比较差,跟不上大家的刷题进度怎么办?

如果基础较差,只能平时或周末抽时间多下点功夫补补了。可以先刷一下中文版力扣的初级算法专题
<https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/>
,基本涵盖了比较常见的题型,刷完后如果觉得哪一块知识点比较弱,可以结合【数据结构与算法分析】这本书来理解知识点。

*
2.我可以只看公众号的文章,不参与刷题打卡吗?


完全可以。公众号的文章阅读是免费的,有问题也可以在公众号提问和留言,参与打卡群是为了强制自己在两个月内全部刷完前400题给自己一个强制约束力,如果你的自制力足够强完全可以不用参与打卡群。参与打卡群并坚持下来后也可以退还入群的费用。只有中途退出没有坚持下来的才不退还费用。如果你在刷题过程中遇到问题可以在群里随时提问,我看到了或者有会做这道题的同学看到了可以及时解答或互相讨论,并且每周一~周三我会抽一天时间将之前群里提问较多的题目总结一下发到群里。此外,我会在群里不定期分享各个公司的面试算法题,帮助最近准备找工作的同学应对面试。也鼓励最近在面试的同学分享算法题,给大家划重点。

*
3.公众号不利于后期复习,请问还有别的方式阅读每周的文章吗?

有。每周的文章我在发布并整理好大家的问题并解答后,会在下周放到leetcodebook-github
<https://github.com/huxiaoman7/leetcodebook>,两个月的刷题计划结束后,会生成gitbook供大家后续阅读。

*
4.如果我有更好的解题方法怎么投稿?


欢迎大家提出更好的解题方法,投稿方式可以在群里发布,或者github-issue里提issue,本人能力有限,不可能掌握所有题型的最优解法,所以欢迎大家讨论&留言&提issue,非常感谢!

 


  明后两天会发布数组&链表的知识点和题型总结,以及相应的题目,大家可以先刷一下把握一下自己刷题的节奏和效率,如果没问题,可以直接对照文章刷,如果坚持不下来,也可以加入群一起来刷,28号之前报名截止。希望大家都能高效快速的刷完!对于本文的建议可以在下方直接留言,也可以戳
微信公众号原文
<https://mp.weixin.qq.com/s?__biz=MzI0OTQwMTA5Ng==&mid=2247483811&idx=1&sn=f2861c24a58f7791cf1873817845bb5d&chksm=e9935bc4dee4d2d22a5c38616152cf8f56650775d3fef932056002816468ae136d1b003a5f50&token=968139680&lang=zh_CN#rd>
,关注公众号后在下方留言,欢迎大家提建议~

 


ps:留言中有提到深度学习系列是不是不更了,后续会继续更新的,剩下的还有检测部分和nlp部分,检测部分会在近期更新,nlp部分我会写好后给做nlp的同学审核后确保没有错误后再发出来(因为我是做cv的,所以nlp的内容没有专业做nlp的同学了解的深,不希望写出来的文章有很多错误,所以会更新的慢一点,希望大家理解啦~)

 


pps:评论里有几个喷子,统一回复一下:我组织这个活动,是自愿原则,想刷题的可以直接看文章,想强制自己在两个月内刷完但自制力又不高的可以加微信打卡群,都可以自由选择。至于刷题本身,有的出于面试需求,有的出于提高代码能力需求,都可以,并不是一件没有意义的事,如果你不想刷题,觉得刷题时间很蠢的行为,大可以直接关闭这个页面不看就行,没有必要喷刷题的人,互相尊重谢谢!

 

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信