GitHub 标星 2.4w+,这个开源项目让算法动起来!

  • 2019 年 10 月 4 日
  • 笔记

转自大数据文摘,作者蒋宝尚

一门编程语言在入门之后,要想进阶,便必须得学好算法和数据结构,但一般的学习过程通常是枯燥无味的,今天在这里给大家分享个工具,兴许能解决你这个问题。

这是一个名为 Algorithm Visualizer 的直观的算法可视化工具,在里面你可以自由选择自己想学习的算法,每个算法它都清晰描绘了其原理和运作过程。

https://github.com/algorithm-visualizer/algorithm-visualizer

开源至今,该项目已在 GitHub 上斩获 2.4w 个 Star,成为开发者们最喜欢的算法项目之一。感兴趣的同学,可以在线玩一下:

https://algorithm-visualizer.org/

如何使用?

工具有了,接下来跟大家讲解下如何使用。

这里以 depth limited Search 为例,对这个工具的大致使用做下演示说明:

如上所示,最左边的为目录区,你可以在这里选择任何你中意的算法,中间就是算法的动态演示区域与日志输出区,而日志模式则会记录每次搜索的过程。

最右边上面有个工具栏,在那里你可以选择播放或者暂停,甚至还有播放速度,工具栏下面部分就是代码区域,该算法的核心代码都是在这里体现。

目前支持的算法非常多,其中包括回溯法、加密算法、动态规划、图搜索、贪婪算法、搜索算法、排序算法等常用算法。

为了便于大家理解,下面我再提供多另外两个算法让大家参考。

二分法检索:

泛洪填充算法:

可以看到,通过动画与代码相结合的学习方式,确实降低了开发者的理解成本,使知识更加容易吸收。

倘若你能学会这款工具的使用,相信后面在学起算法时会更加得心应手,另外还能对他人进行讲解演示,真可谓是一举两得。

现在,工具有了,你还不开始学起来吗?

文章转载自公众号 大数据文摘 , 作者 文摘菌