V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
wuYin
V2EX  ›  Go 编程语言

LeetCode 200 刷题总结

  •  
  •   wuYin · 2018-12-22 17:18:17 +08:00 · 5138 次点击
    这是一个创建于 2171 天前的主题,其中的信息可能已经有所发展或是发生改变。

    四月前自己在 v 站发帖 t/471191 讨论如何提升自己的能力,刷题便是其中之一。那会儿才写了几个题,好在坚持了下来,目前 LeetCode 写了两百题:github.com/wuYin/leetcode

    我是按 tag 从 easy 到 hard 刷的,每个 tag 会先参考《数据结构与算法分析》 中对应章节,即学即应用,效果显著,还是挺值得去做的。

    前几天看到帖 t/517971 在讨论应届生如何往架构方向发展,几月前写业务也有类似疑惑。现在发现写业务也可以有技术含量,比如业务里用到敏感词过滤可以自己用自动机算法匹配,定时任务用时间轮算法去做,短信业务写队列去发送,特定场景的数据可用 LRU 去缓存,用 trie 树做搜索词预测…等等场景,基础打扎实了还可以用 6.824 学学分布式相关的知识。希望 2019 可以把剩下的题慢慢写完。

    22 条回复    2018-12-23 21:09:01 +08:00
    e9e499d78f
        1
    e9e499d78f  
       2018-12-22 18:29:56 +08:00 via iPhone
    楼主好样的
    sulinehk
        2
    sulinehk  
       2018-12-22 18:32:59 +08:00 via Android
    厉害厉害 go 好评!
    wmwwmv
        3
    wmwwmv  
       2018-12-22 18:39:42 +08:00
    膜拜
    SpiderXiantang
        4
    SpiderXiantang  
       2018-12-22 18:41:20 +08:00
    150 周末 14 道 缓慢进展中。。。
    wuYin
        5
    wuYin  
    OP
       2018-12-22 18:43:53 +08:00 via Android
    @SpiderXiantang 加油共勉( ̄▽ ̄)
    pudgedoor
        6
    pudgedoor  
       2018-12-22 19:22:01 +08:00 via Android
    真棒,楼主怎么安排时间刷题的?一天几个?我最近一天刷一个题感觉时间不太够用。。
    SpiderXiantang
        7
    SpiderXiantang  
       2018-12-22 19:24:40 +08:00
    @pudgedoor 简单题刷起来很快的 对于我的话中等难度 就得花点时间
    jingyulong
        8
    jingyulong  
       2018-12-22 19:34:22 +08:00 via iPhone
    刷了这么多题是一种什么体验
    wuYin
        9
    wuYin  
    OP
       2018-12-22 20:07:47 +08:00   ❤️ 1
    @pudgedoor

    我是按照 tag 从简单到困难做的,做之前会看一遍书。比如刷二叉树的题,我会先看《数据结构与算法》第四章,搞明白先序、中序、后序和层序遍历的递归实现、迭代实现,如此就能解决 1/3 的题。

    关于答案:就算 accept 也不一定是最优解,可以参考对应题下 discuss 里大佬们的解法,经常会惊叹还能这样用数据结构...好巧妙...之类的。

    关于时间:我一般每天早起上班前一两个小时写一个题,做不出来就留到晚上这样。

    其他:系统地学习算法还是很有必要的,coursera 上有专门讲算法的名校中文课程,有助于理解,我刷到贪心等节点时候也需要先系统地学一下。经常复习是很有必要的,我这点也有欠缺。
    wuYin
        10
    wuYin  
    OP
       2018-12-22 20:08:22 +08:00
    @jingyulong 不算多啊,都是些基础数据结构的应用。
    jamesxu
        11
    jamesxu  
       2018-12-22 20:21:26 +08:00 via iPhone
    这种学习模式不错
    pudgedoor
        12
    pudgedoor  
       2018-12-22 20:43:53 +08:00 via Android
    @SpiderXiantang 最近刷剑指 offer,基本一题就是一两小时,进度感人😂😂
    pudgedoor
        13
    pudgedoor  
       2018-12-22 20:44:08 +08:00 via Android
    @wuYin 学习了!谢谢楼主
    mmmfj
        14
    mmmfj  
       2018-12-22 21:07:24 +08:00
    @wuYin 每天早起上班前一两个小时。这么自律,佩服
    jingyulong
        15
    jingyulong  
       2018-12-22 21:17:33 +08:00
    就是想问问,是不是平时写代码觉得思路开阔很多,或者是其他一种感觉?
    wuYin
        16
    wuYin  
    OP
       2018-12-22 21:28:42 +08:00
    @jingyulong 也没那么明显,个人认为主要看应用场景。如果后端某个模块对性能要求比较高的话,刷题用到的某些数据结构和算法就派上用场了。
    dongisking
        17
    dongisking  
       2018-12-22 21:34:23 +08:00 via Android
    强无敌,感觉过了这扇门,以后就是大牛之路了
    Hawstein
        18
    Hawstein  
       2018-12-23 13:49:36 +08:00
    目前在做算法讲解视频,感兴趣的可以了解一下。下一个 milestone 是 150 个视频。

    首页:
    https://algocasts.io

    视频列表:
    https://algocasts.io/episodes

    常见问题可以看 FAQ:
    https://algocasts.io/faq
    CoderOnePolo
        19
    CoderOnePolo  
       2018-12-23 14:39:11 +08:00   ❤️ 1
    趁波广告,目前在做图解 LeetCode 算法项目,github 上有 5700star,感兴趣的可以了解一下:
    https://github.com/MisterBooo/LeetCodeAnimation
    wuYin
        20
    wuYin  
    OP
       2018-12-23 16:41:17 +08:00 via Android
    @CoderOnePolo 厉害了 dalao,前不久还买了你的小专栏,资瓷
    CoderOnePolo
        21
    CoderOnePolo  
       2018-12-23 20:16:25 +08:00 via iPhone
    @wuYin 感谢支持:)
    a852695
        22
    a852695  
       2018-12-23 21:09:01 +08:00   ❤️ 1
    @CoderOnePolo 好棒的资料
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2966 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 12:46 · PVG 20:46 · LAX 04:46 · JFK 07:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.