代码改变世界

今天发现一个 leetcode 大神 google的

2020-04-12 22:17  tonyniu8  阅读(1032)  评论(0)    收藏  举报

今天发现一个 leetcode 大神 google的,开心。 他在 leetcode有三十多个题解
https://leetcode-cn.com/u/sean-kuang/
还有 github
https://github.com/kxace

这哥们 题解很棒,已经刷了300题
https://leetcode.wang/leetcode-211-Add-And-Search-Word-Data-structure-design.html

算法之路

  1. 来自
    https://github.com/labuladong/fucking-algorithm
    尽量刷英文版的 LeetCode,中文版的“力扣”是阉割版,不仅很多题目没有答案,而且连个讨论区都没有。英文版的是真的很良心了,很多问题都有官方解答,详细易懂。而且讨论区(Discuss)也沉淀了大量优质内容,甚至好过官方解答。真正能打开你思路的,很可能是讨论区各路大神的思路荟萃。

PS:如果有的英文题目实在看不懂,有个小技巧,你在题目页面的 url 里加一个 -cn,即 https://leetcode.com/xxx 改成 https://leetcode-cn.com/xxx,这样就能切换到相应的中文版页面查看。

对于初学者,强烈建议从 Explore 菜单里最下面的 Learn 开始刷,这个专题就是专门教你学习数据结构和基本算法的,教学篇和相应的练习题结合,不要太良心。
比如树结构的学习
https://leetcode.com/explore/learn/card/data-structure-tree/

最近 Learn 专题里新增了一些内容,我们挑数据结构相关的内容刷就行了,像 Ruby,Machine Learning 就没必要刷了。刷完 Learn 专题的基础内容,基本就有能力去 Explore 菜单的 Interview 专题刷面试题,或者去 Problem 菜单,在真正的题海里遨游了。

无论刷 Explore 还是 Problems 菜单,最好一个分类一个分类的刷,不要蜻蜓点水。比如说这几天就刷链表,刷完链表再去连刷几天二叉树。这样做是为了帮助你提取「框架」。一旦总结出针对一类问题的框架,解决同类问题可谓是手到擒来。

想想自己的motivation

这是你的动力

刷题步骤

  1. 先自己想, 有办法的话,直接写。
  2. 没办法,找题解。 可以去discuss, solution, 或者九章里面。
    https://www.jiuzhang.com/solution/unique-binary-search-trees-ii/
    3.再写出来,要把思路总结下来, 留到回头复习。

刷题时间

  1. 早上起来 看一道题。
  2. 路上的时候想思路。
  3. 午休的时候可以试试。
  4. 晚上下班后可以再把它具体实现一遍。

刷题的先后顺序。

  1. 按专题,由易到难。
  2. 可以通过 leetcode explore 先过一下,基本的。 不会的数据结构去看算法4和google.

知乎中关于 leetcode 的回答。

https://www.zhihu.com/question/26580300

代码随想录PDF下载

https://mp.weixin.qq.com/s/NF7NqTD9DU505S6nvR_5Wg