如何提升解决算法题的能力

来源:7-1 图论基础

慕码人6679368

2018-10-18

请问波波老师,当碰到一些新的题目,如何设计一个好的解决方法,如何提升这方面分呢后,请问一些经典的算法代码需要记忆吗,还是只能通过大量的刷题

写回答

1回答

liuyubobobo

2018-10-18

代码不需要记忆。但是逻辑必须了解,并且达到能够根据逻辑写出代码的程度。这一点非常重要。比如:你不需要背下来快速排序的代码,但是,你应该了解快速排序是怎样的过程,并且根据你理解的过程,写出正确代码。这里,写出正确的代码,不代表一次就能够完全写对,调试是允许的(也是必要的),但最终,应该能写出来:)对于所有经典算法,都应该能做到这个程度。


刷题是必要的,也是重要的学习算法,提高算法能力的手段。一个算法思想能解决怎样的问题,或者一个问题(或一类问题)能够通过怎样的算法去解决,很多时候要多看,多见。见识广,才能思路广。所谓量变到质变。个人认为,对于基础算法部分,至少要见200个问题。每个问题都要想透,理解透,甚至使用多种方案解决。在达到这个量级之前,基本上不太需要在学习方法上找原因,就是量不够。一般同学在达到这个量级以后,通常也会有自己的一些学习心得,知道如何根据自己的实际情况,进一步提高自己了:)


对于刷题,推荐Leetcode。也推荐一下我的课程《玩转算法面试》:)传送门:https://coding.imooc.com/class/82.html


加油!:)

1
0

算法与数据结构(C++版) 面试/评级的算法复习技能包

课程专为:短时间内应对面试、升职测评等艰巨任务打造

11231 学习 · 1617 问题

查看课程