Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

【003-week2】第二周刷题感想与少量python技巧整理 #96

Open
lection opened this issue Jun 15, 2019 · 0 comments
Open

【003-week2】第二周刷题感想与少量python技巧整理 #96

lection opened this issue Jun 15, 2019 · 0 comments

Comments

@lection
Copy link
Contributor

lection commented Jun 15, 2019

第二周调整了刷题的策略,先从难题开始做,然后再做中等,最后做简单的题。这样个调整对我个人感觉非常有效,第一周先做简单题并且纠结于多种实现方式,到最后时间不够又剩下了难题,心态上就十分焦躁,总感觉没有完成核心的任务。本周同样遇到时间不够的情况,但最后剩下都是简单的题,极大的减轻了心理负担。

不过这样依然还是有一定的心理负担。虽然先做的难题,但是我个人感受难题未必真的难,有可能只是步骤复杂代码量较大,感觉LeetCode(国内)上讨论的解法都大同小异。反倒是有些中等甚至简单的题,很多神奇的解法更加让人震惊,比如这次的220题,深深的震撼了我。没能把超哥布置的所有题都刷掉,还是心有不甘,只希望自己训练营结束以后依然能够继续坚持刷题。

这周有一个好的趋势,我在公司宣传刷题的时候成功吸引了两个同事一起入坑,大家刷的十分投入。缺点是有点儿耽误工作,我右边的哥们一个题卡了快一下午……我还得想办法控制控制局面。

下面分享一些新学到的技巧,对我比较有价值。

  1. 超哥强调的『先读题』很重要,我在297这题上犯了错误,看见二叉树和数组就想当然的以为是实现2n,2n+1的玩法。结果完全错误……

  2. python中在对数字进行逻辑判断的时候,如果相对None进行判断,最好还是老老实实的写 if n is None,否则会在0的处理上踩坑。

  3. python中没有『异或』,但是可以使用 bool(n1) != bool(n2) 来曲线救国。

  4. Iterator 是个好东西,在某些递归父问题与子问题共同迭代同一个数据结构,并且父在子的迭代下标基础上继续迭代到时候,很好用。例如这次的726。

  5. python是有整除的, n1 // n2 。

  6. 220这个题的O(n)解法真的太酷了……

  7. python的标准库似乎没有 链表、平衡查找树等数据结构,都是基于数组的……如果想直接用,还是Java方便一些。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant