大家好,我是每到面试季都要刷算法题的了不起。
话说作为一名程序员,肯定都少不了在准备面试的时候刷 LeetCode 的算法题吧。虽然面试考察的算法题在工作中用到的非常少,但是确实是能让我们对常用的数据结构有更深刻的理解,以及对思维逻辑有很大的提升。不过枯燥的刷题可能让新手无从下手,在这里我就给大家推荐一个超棒的算法学习项目——hello-algo。
项目介绍
hello-algo 旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程,可以理解为是一本开源的电子书籍。项目采用动画图解的方式,结构化地讲解数据结构与算法知识,内容清晰易懂,让学习曲线更加平滑。而项目中提供的算法源代码 demo 都可以一键运行,支持 Python、C++、Java、C#、Go、Swift、JavaScript、TypeScript、Dart、Rust、C 和 Zig 等语言。
所以无论你日常使用的事什么语言,都可以在这个项目的学习过程中获取对应的案例快速上手。
hello-algo 的思维导图如下所示:
一起来学习吧
因为图片和动画会更直观的让大家理解算法中的知识点,因此 hello-algo 中的重点和难点知识将主要通过动画以图解形式展示,而文字则作为解释与补充。
之后,你可以直接使用项目中自带的例子来运行体验一下。当然,项目更推荐你自己用代码先实现。
项目中的代码可以直接从网页中获取,如图:
当然,如果你把整个工程都 clone 到本地,也可以直接根据代码文件名找到例子直接运行即可,非常方便。
与此同时,我们也可以在网页上直接运行 Python 代码,更加方便。
总结
hello-algo 是我截止到目前见到的最好的算法学习教程,通过图片、动画、代码多管齐下的方式,可以让初学者少走很多弯路,更容易理解算法知识。而对于经验丰富的程序来说,也可以用 hello-algo 来重新梳理自己算法的知识体系。
1 | 项目地址:https://github.com/krahets/hello-algo |