Skip to content

要怎么学算法

1. 简单谈谈我是怎么学的

INFO

首先,我并非大佬,也不是非常专业的,对于算法也不是那么的精通, leetcode 上也只是刷一些简单题,在这里只是分享自己学习的经验,希望能够有用,但如果有错误,希望您能够指出。

  1. 开始

    2020 年 9 月份,我觉得自己应该尝试新的东西,所以就开始学习算法。

    当时好多大佬都推荐 《算法 4》 这本书,所以自己就买了一本,然后开始从头到尾一点点的看,书讲得非常的详细,把每一个基础算法都进行了细致的剖析,自己呢也算是能静得下心来,买了一本 400 页的笔记本,一页一页的嚼了起来。

  2. 过程

    刚开始一些简单的算法,比如二分、快排等,我还能勉强的理解,到了后面的例如 红黑树、有向无向图,直接是头疼,一个算法要看好久好久,记得很清楚的是,红黑树我整整看了 5 天吧,才勉强的能够有些认知,但是到了真正写的时候,还是一脸懵的。

    但是我有个优点就是,我不会轻易的放弃,难嘛,多读几次了,复杂嘛,多写几遍了,实在不懂的,就背下来了,说不定后面就懂了呢。

    当时《算法 4》 的每一个算法我能理解的,我就理解着写到笔记本上,实在不能理解的,我就背下来,多写几遍,然后默写到笔记本上。

    当然,深入理解才能达到举一反三的能力,不然随便变一下形,出一道题目就不会了。要怎样才能深入理解呢,光看肯定是不行的,得写,所以吧,每学习完一个算法,我就到 leetcode 上去刷对应的,不多,每个算法 10 道题目就够够的了,也不用刷困难啥的,简单和中等的 8 : 2 也是足矣。

  3. 后来

    后来 🛫 🛫 🛫 🛫 🛫

  4. 现在

2. 一些建议

  1. 不要畏惧

    其实算法真的没有想象的那么难,也并不是多么多么高深的东西,只要你用心,可以的。

  2. 一定要动手

    所有的算法都需要反复的练习和思考,有时候想不通,理解不到,先动手写,可以先照着写,然后再自己探索着写,也可以做题练习着写,很多时候,写着写着,你就理解了,亲测有效哟 😄!!

  3. 尝试着用一用

    其实学习算法并不完全是为了面试,很多时候,我们开发过程中还是可以用得上的,如果可以的话,尝试着将算法应用到自己的业务代码中,一定事半功倍。

Released under the MIT License.