如何提升解决算法题的能力
来源:7-1 图论基础
慕码人6679368
2018-10-18
请问波波老师,当碰到一些新的题目,如何设计一个好的解决方法,如何提升这方面分呢后,请问一些经典的算法代码需要记忆吗,还是只能通过大量的刷题
写回答
1回答
-
liuyubobobo
2018-10-18
代码不需要记忆。但是逻辑必须了解,并且达到能够根据逻辑写出代码的程度。这一点非常重要。比如:你不需要背下来快速排序的代码,但是,你应该了解快速排序是怎样的过程,并且根据你理解的过程,写出正确代码。这里,写出正确的代码,不代表一次就能够完全写对,调试是允许的(也是必要的),但最终,应该能写出来:)对于所有经典算法,都应该能做到这个程度。
刷题是必要的,也是重要的学习算法,提高算法能力的手段。一个算法思想能解决怎样的问题,或者一个问题(或一类问题)能够通过怎样的算法去解决,很多时候要多看,多见。见识广,才能思路广。所谓量变到质变。个人认为,对于基础算法部分,至少要见200个问题。每个问题都要想透,理解透,甚至使用多种方案解决。在达到这个量级之前,基本上不太需要在学习方法上找原因,就是量不够。一般同学在达到这个量级以后,通常也会有自己的一些学习心得,知道如何根据自己的实际情况,进一步提高自己了:)
对于刷题,推荐Leetcode。也推荐一下我的课程《玩转算法面试》:)传送门:https://coding.imooc.com/class/82.html
加油!:)
10
相似问题