昨天是元宵节, 过完元宵节相当于这个年正式过完了. 不知道大家有没有投入继续投入紧张的学习工作中. 年前我想开一个 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. 如果我的基础比较差, 跟不上大家的刷题进度怎么办?
如果基础较差, 只能平时或周末抽时间多下点功夫补补了. 可以先刷一下中文版力扣的初级算法专题, 基本涵盖了比较常见的题型, 刷完后如果觉得哪一块知识点比较弱, 可以结合 [数据结构与算法分析] 这本书来理解知识点.
2. 我可以只看公众号的文章, 不参与刷题打卡吗?
完全可以. 公众号的文章阅读是免费的, 有问题也可以在公众号提问和留言, 参与打卡群是为了强制自己在两个月内全部刷完前 400 题给自己一个强制约束力, 如果你的自制力足够强完全可以不用参与打卡群. 参与打卡群并坚持下来后也可以退还入群的费用. 只有中途退出没有坚持下来的才不退还费用. 如果你在刷题过程中遇到问题可以在群里随时提问, 我看到了或者有会做这道题的同学看到了可以及时解答或互相讨论, 并且每周一~ 周三我会抽一天时间将之前群里提问较多的题目总结一下发到群里. 此外, 我会在群里不定期分享各个公司的面试算法题, 帮助最近准备找工作的同学应对面试. 也鼓励最近在面试的同学分享算法题, 给大家划重点.
3. 公众号不利于后期复习, 请问还有别的方式阅读每周的文章吗?
有. 每周的文章我在发布并整理好大家的问题并解答后, 会在下周放到 leetcodebook-GitHub, 两个月的刷题计划结束后, 会生成 gitbook 供大家后续阅读.
4. 如果我有更好的解题方法怎么投稿?
欢迎大家提出更好的解题方法, 投稿方式可以在群里发布, 或者 GitHub-issue 里提 issue, 本人能力有限, 不可能掌握所有题型的最优解法, 所以欢迎大家讨论 & 留言 & 提 issue, 非常感谢!
明后两天会发布数组 & 链表的知识点和题型总结, 以及相应的题目, 大家可以先刷一下把握一下自己刷题的节奏和效率, 如果没问题, 可以直接对照文章刷, 如果坚持不下来, 也可以加入群一起来刷, 28 号之前报名截止. 希望大家都能高效快速的刷完! 对于本文的建议可以在下方直接留言, 也可以戳微信公众号原文, 关注公众号后在下方留言, 欢迎大家提建议~
来源: https://www.cnblogs.com/charlotte77/p/10409417.html