LeetCode刷题专栏第一篇--思维导图&时间安排
昨天是元宵节,过完元宵节相当于这个年正式过完了。不知道大家有没有投入继续投入紧张的学习工作中。年前我想开一个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.和气谈论,就事论事,不要人身攻击。
入群方式:已截止
LeetCode前400题思维导图
思维导图如下

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

Q&A
1.如果我的基础比较差,跟不上大家的刷题进度怎么办?
如果基础较差,只能平时或周末抽时间多下点功夫补补了。可以先刷一下中文版力扣的初级算法专题,基本涵盖了比较常见的题型,刷完后如果觉得哪一块知识点比较弱,可以结合【数据结构与算法分析】这本书来理解知识点。
2.我可以只看公众号的文章,不参与刷题打卡吗?
完全可以。公众号的文章阅读是免费的,有问题也可以在公众号提问和留言,参与打卡群是为了强制自己在两个月内全部刷完前400题给自己一个强制约束力,如果你的自制力足够强完全可以不用参与打卡群。参与打卡群并坚持下来后也可以退还入群的费用。只有中途退出没有坚持下来的才不退还费用。如果你在刷题过程中遇到问题可以在群里随时提问,我看到了或者有会做这道题的同学看到了可以及时解答或互相讨论,并且每周一~周三我会抽一天时间将之前群里提问较多的题目总结一下发到群里。此外,我会在群里不定期分享各个公司的面试算法题,帮助最近准备找工作的同学应对面试。也鼓励最近在面试的同学分享算法题,给大家划重点。
3.公众号不利于后期复习,请问还有别的方式阅读每周的文章吗?
有。每周的文章我在发布并整理好大家的问题并解答后,会在下周放到leetcodebook-github,两个月的刷题计划结束后,会生成gitbook供大家后续阅读。
4.如果我有更好的解题方法怎么投稿?
欢迎大家提出更好的解题方法,投稿方式可以在群里发布,或者github-issue里提issue,本人能力有限,不可能掌握所有题型的最优解法,所以欢迎大家讨论&留言&提issue,非常感谢!
对于本文的建议可以在下方直接留言,也可以戳微信公众号原文,关注公众号(Charlotte数据挖掘)后在下方留言,欢迎大家提建议~
ps:留言中有提到深度学习系列是不是不更了,后续会继续更新的,剩下的还有检测部分和nlp部分,检测部分会在近期更新,nlp部分我会写好后给做nlp的同学审核后确保没有错误后再发出来(因为我是做cv的,所以nlp的内容没有专业做nlp的同学了解的深,不希望写出来的文章有很多错误,所以会更新的慢一点,希望大家理解啦~)
LeetCode刷题专栏第一篇--思维导图&时间安排的更多相关文章
- LeetCode刷题总结-数组篇(上)
数组是算法中最常用的一种数据结构,也是面试中最常考的考点.在LeetCode题库中,标记为数组类型的习题到目前为止,已累计到了202题.然而,这202道习题并不是每道题只标记为数组一个考点,大部分习题 ...
- LeetCode刷题总结-数组篇(下)
本期讲O(n)类型问题,共14题.3道简单题,9道中等题,2道困难题.数组篇共归纳总结了50题,本篇是数组篇的最后一篇.其他三个篇章可参考: LeetCode刷题总结-数组篇(上),子数组问题(共17 ...
- LeetCode刷题总结-树篇(上)
引子:刷题的过程可能是枯燥的,但程序员们的日常确不乏趣味.分享一则LeetCode上名为<打家劫舍 |||>题目的评论: 如有兴趣可以从此题为起点,去LeetCode开启刷题之 ...
- LeetCode刷题总结-数组篇(中)
本文接着上一篇文章<LeetCode刷题总结-数组篇(上)>,继续讲第二个常考问题:矩阵问题. 矩阵也可以称为二维数组.在LeetCode相关习题中,作者总结发现主要考点有:矩阵元素的遍历 ...
- LeetCode刷题总结-树篇(下)
本文讲解有关树的习题中子树问题和新概念定义问题,也是有关树习题的最后一篇总结.前两篇请参考: LeetCode刷题总结-树篇(上) LeetCode刷题总结-树篇(中) 本文共收录9道题,7道中等题, ...
- LeetCode刷题总结-树篇(中)
本篇接着<LeetCode刷题总结-树篇(上)>,讲解有关树的类型相关考点的习题,本期共收录17道题,1道简单题,10道中等题,6道困难题. 在LeetCode题库中,考察到的不同种类的树 ...
- LeetCode刷题总结-字符串篇
本文梳理对LeetCode上有关字符串习题的知识点,并给出对应的刷题建议.本文建议刷题的总数为32题.具体知识点如下图: 1.回文问题 题号:5. 最长回文子串,难度中等 题号:214. 最短回文串, ...
- LeetCode刷题总结-动态规划篇
本文总结LeetCode上有动态规划的算法题,推荐刷题总数为54道.具体考点分析如下图: 1.中心扩展法 题号:132. 分割回文串 II,难度困难 2.背包问题 题号:140. 单词拆分 II,难度 ...
- LeetCode刷题总结-数学篇
本文总结LeetCode上有数学类的算法题,推荐刷题总数为40道.具体考点分析如下图: 1.基本运算问题 题号:29. 两数相除,难度中等 题号:166. 分数到小数,难度中等 题号:372. 超级次 ...
随机推荐
- python 编码形式简单入门
为什么使用Python 假设我们有这么一项任务:简单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200. 思路:用shell编程.(Linux通常是 ...
- CDH简易离线部署文档
CDH 离线简易部署文档 文档说明 本文为开发部署文档,生产环境需做相应调整. 以下操作尽量在root用户下操作,避免权限问题. 目录 文档说明 2 文档修改历史记录 2 目录 3 ...
- Mysql 查询缓存总结
Mysql 查询缓存总结 MySQL查询缓存解释 缓存完整的SELECT查询结果,也就是查询缓存.保存查询返回的完整结果.当查询命中该缓存,mysql会立刻返回结果,跳过了解析.优化和执行阶段, 查询 ...
- QT5:C++实现基于Multimedia的音乐播放器(序)
前段时间C++课设,决定做个播放器,于是参考了网上的代码后,做了个很简陋的音乐播放器(只写了MP3格式)出来,虽然功能甚少,但还是决定把过程记录一下. 成品如下图: 播放器功能: 上.下一首,音量控制 ...
- linux内核堆栈
一:进程的堆栈 内核在创建进程的时候,在创建task_struct的同时会为进程创建相应的堆栈.每个进程会有两个栈,一个用户栈,存在于用户空间,一个内核栈,存 在于内核空间.当进程在用户空间运行时,c ...
- JMeter Concurrency Thread Group阶梯式加压
初始使用,做了下总结 1.首先下载Concurrency Thread Group并发线程组插件,选择或者搜索Custom Thread Groups: 下载完成之后,JMeter会自动重启. 2.在 ...
- JavaScript设计模式Item 1—多态
多态的实际含义是:同一操作作用于不同的对象上面,可以产生不同的解释和不同的执行结果.换句话说,给不同的对象发送同一个消息的时候,这些对象会根据这个消息分别给出不同的反馈. 从字面上来理解多态不太容易, ...
- Java 读书笔记 (五) 目标数据类型转换
数据类型转换必须满足如下规则: 不能对boolean类型进行类型转换 不能把对象类型转换成不相关类的对象 //那不同类的对象可以用同一个名字命名吗?根据作用域原则,可以吧? 把容量大的转换为容量小的 ...
- 关于Kafka __consumer_offests的讨论
众所周知,__consumer__offsets是一个内部topic,对用户而言是透明的,除了它的数据文件以及偶尔在日志中出现这两点之外,用户一般是感觉不到这个topic的.不过我们的确知道它保存的是 ...
- volume.go
package)) ) ,) ) );) , } }