算法技术手册(AlgorithmVisualizer让算法动起来)

上学时严蔚敏老师的算法课是非常有名的,在那个年代已经有很好的课件来表达算法的动态过程了。江山代有人才出,现在的演示做的更好。这里推荐一个开源项目,用Python实现了所有的排序算法,包括插入排序、冒泡排序、快速排序、选择排序、归并排序等。

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

算法技术手册(AlgorithmVisualizer让算法动起来)(1)

目前Algorithm Visualizer 在 GitHub 上已经获得星星数量24713,fork数量为3938。

GitHub地址:

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

演示地址:

https://algorithm-visualizer.org/

algorithm-visualizer用法

下面通过depth limited Search,大概解释一下 Algorithm Visualizer 这个工具:

算法技术手册(AlgorithmVisualizer让算法动起来)(2)

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

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

算法技术手册(AlgorithmVisualizer让算法动起来)(3)

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

看看二分法检索这个算法的演示如何:

算法技术手册(AlgorithmVisualizer让算法动起来)(4)

泛洪填充算法的演示结果:

算法技术手册(AlgorithmVisualizer让算法动起来)(5)

不懂算法的程序员,不是好的架构师。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页