我看很多人学习算法,学习数据结构都觉得很难,无法理解。一直以来我都在探索为什么,为什么会产生这样的问题。究其原因,我发现,难的不是编程本身,不是代码本身,而是代码或者编程背后的数学原理。这些数学包含但不仅限于小学数学、奥数、初中数学、奥数、高中数学、奥数等。因为数学基础不好,使得他们对算法的理解也不够深刻,而是马马虎虎,一知半解,最终一个新的问题出来,还是不会。
我认为,要想提高编程能力,提高算法与数据结构的解题能力,提高逻辑能力,数学基础不能太差,这个时候有人会问,数学的范围那么广,那我该从哪里学习起呢?这个问题,曾经也把我迷惑住了;范围广、知识点多不要紧,我的建议是,你每天都花一点时间去学习数学,20~30分钟,你难道没有吗?日积月累,久而久之你会发现,自己的编程或者算法能力竟然提高了……非常不可思议。
比如说我,我现在是每天学习半小时的小学数学或者奥数,然后把这些知识点做归纳总结进行输出,学习的东西一定要有记录,要有输出,千万不可就放在脑袋里,否则时间久了,都会忘记的,到时如果想要复习,也没地方去寻找记录或者痕迹了,所以还是谚语说得好:好记性不如烂笔头。
如果你没有相关的资源,可以私信我要,但是这些资料你要回去,并不是保存起来就以为自己学会了,而是要踏实去学习,坚持去学习。
不管你相不相信,如果你按照我说的做,你真的会发现,你的编程能力,算法能力会有所提高。
当然,在之后的博客当中,我也会适当插入一些数学知识的讲解,因为它与算法数据结构是相辅相成的,必须要学习这样东西,不要惧怕数学,没什么好怕的。