这些算法可视化网站助你轻松学算法

来源:公众号【编程珠玑】

作者:守望先生

 

前言

无疑,数据结构与算法学习最大的难点之一就是如何在脑中形象化其抽象的逻辑步骤。而图像在很多时候能够大大帮助我们理解其对应的抽象化的东西,而如果这个图像还是我们自己一点点画出来的,那么无疑这个印象是最深刻的了。没错,今天给大家分享的就是算法可视化的网站。

Data Structure Visualizations

网站地址为:

https://www.cs.usfca.edu/~galles/visualization/Algorithms.html

目前已经有很多常用的数据结构与算法的可视化,例如常见的栈,队列,递归,二叉树等等:

640?wx_fmt=png

Data Structure Visualizations

我们点一个二叉查找树进去看看:

640?wx_fmt=png

二叉查找树

开始时,是一片空白,左上角有几个按钮,为insert,delete,find,print,分别用于二叉查找树的插入,删除,查找和遍历。而这些过程的每一步都在你的掌控之中,你可以看到每一个节点是如何插入或者删除的。

640?wx_fmt=png

二叉查找树

还有很多其他算法的可视化,非常简洁直观,值得一试。

该网站特点:

  • 算法可视化

  • 界面简洁直观

  • 过程可控制

VisuAlgo

网址地址为:https://visualgo.net/zh/。这个网站涉及的算法就更加全面了。从首页就可以看出来不一样了,不仅支持多种算法可视化,还支持搜索。

640?wx_fmt=png

VisuAlgo

而它除了提供和前面一个网址类似的算法动画以外,还提供大量的文字讲解:

640?wx_fmt=png

VisuAlgo

而在执行动画的时候,旁边仍然会有文字描述当前步骤,并且左下角还有算法复杂度的注释说明。

640?wx_fmt=gif

堆排序

该网站特点

  • 算法可视化

  • 文字讲解

  • 复杂度备注

  • 图形可操控调整

algorithm-visualizer

网址地址:https://algorithm-visualizer.org/
它支持的算法种类也很多,除此之外,它还提供java,c++,js代码。而控制台也输出着整个过程来帮助你理解算法。

640?wx_fmt=png

algorithm-visualizer

来看一个冒泡排序:

640?wx_fmt=gif

bubble sort

该网站特点

  • 算法可视化

  • 有代码

  • 有控制台输出帮助理解

  • 算法种类丰富

总结

以上几个网站各有特点,可自己体验后,选择自己喜欢的。

讨论

你是如何学习算法的?欢迎分享你的算法学习经验。

推荐阅读:

图解:基于二叉堆的堆排序是如何实现的?

什么是二叉查找树?

什么是优先队列?

如何从40亿个整数中找到不存在的一个

进阶版:面试官问你斐波那契数列的时候不要高兴得太早

关注公众号【编程珠玑】,获取更多Linux/C/C++/Python/Go/算法/工具等原创技术文章。后台免费获取经典电子书和视频资源

  • 22
    点赞
  • 131
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值