做 LeetCode 有感

来源:互联网 发布:java开发注册登陆 编辑:程序博客网 时间:2024/05/17 22:42

今天周六,公司一个人也没有,下午花了5个半小时,安安静静的再看,再做了4道 LeetCode 的题目。看完之后,现在仔细回想,获得了什么,好像什么也没有。但是,就是觉得这个过程是很舒服的,就像看了一场电影,和女朋友逛了一次街,去吃了一次火锅一样。

做这些题目的时候是有一些想法,但是具体到编码,倒不是想象的那么轻松,1分钟的想法,可能要花一个小时的实现。另外,在看 Discuss 别人的实现中,你会发现,你的解决思路是那么的烂,即使你的解决思路是最优的,你也会发现,自己写的代码是那么的冗余, 别人10行写的代码,可能你要50行。

另外,关于做LeetCode,和刷LeetCode。做LeetCode 是一种兴趣爱好,刷LeetCode是一种工作,这两种的本质是不同。引用知乎上的一段答案:

工作党,没工夫天天刷 LeetCode. 所以每天做一道提提神。
1. 早上起来出门前,迅速看一道题。
2. 北京地铁不是挤么,它挤它的,你想你的题。
3. 太简单,手机上就提交了,联通的 3G 信号要好一点,反正地铁上只能空出一只手,耐心等就好了。
4. 如果有难度,那就一直放在脑子里面想,到了公司,一开电脑基本就有答案了。
5. 把解决方案放到 Github,答案不是主要的,记录思路,留作日后的总结。
6. 晚上睡觉前,反思一下是不是最优解法,有时间的话看看discuss,没时间,把自己的解法理顺了,涉及的知识点再过一遍脑子,就行了。这些步骤,都是被逼出来的,没那么多时间,高效不高效,正确不正确,也只能这样了。

这才是正确的做法。

最后,

  1. Talk is cheap, show me the code。
  2. 归零思想,在看别人的答案的时候,你会发现,别人比你太牛逼了。
  3. 思考事情的时候,就像思考算法一样,需要严谨,容不得马虎。

自勉。

1_Two_Numbers
283_Move_Zeroes
290_Word_Pattern
292_Nim_Game

0 0