个人文章-编程思维

本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构等核心知识点,欢迎star~

Github地址:https://github.com/Tyson0314/...

大家好,我是大彬~

很多初学者在学习数据结构与算法的时候,都会觉得很难,很大一部分是因为数据结构与算法本身比较抽象,不好理解。对于这一点,可以通过一些可视化动画来帮助理解。

下面大彬推荐几个学习数据结构和算法的可视化工具。

Data Structure Visualizations

这是一个在线数据可视化工具,可以手动创建各种数据结构,包括队列、栈、堆、树等等,并且支持递归、排序、搜索等算法的动态演示。该工具由旧金山大学开发,地址:https://www.cs.usfca.edu/~gal...

这个工具通过可视化的方式展现了数据结构和算法,方便我们理解其中的原理。网站容易操作、内容丰富且容易理解,非常nice~虽然网站是英文的,不过都是些容易理解的术语,英文不好的小伙伴也不会有很大的阅读障碍。

下图演示红黑树插入节点的操作,非常直观!

visualgo

该网站由 Steven Halim 博士开发,对于理解数据结构与算法非常有帮助。网站里面包含了排序、链表、哈希表、二叉搜索树、递归树、循环查找等常见算法动画。

地址:https://visualgo.net/zh

在动画执行的过程中,还会在网站右下角高亮展示动画的代码逻辑。非常适合初学者学习巩固自己的算法知识。

BinaryTreeVisualiser

一款二叉树可视化的工具,可以用来学习二叉树,超级好用。地址:http://btv.melezinek.cz/home....

btree-js

这是一个专门演示B树的工具,可以在上面插入节点模拟B树的构建过程,对于理解B树这种数据结构非常有帮助。

地址:https://yangez.github.io/btre...

Algorithm Visualizer

Algorithm Visualizer 是一个可视化代码算法的交互式平台,内含多种算法(回溯、动态规划、贪心等)并进行了可视化动画呈现,让学习算法和数据结构更加直观。

地址:https://algorithm-visualizer....

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

Algorithm Visualizer支持js/C++/Java语言,运行会有动态图演示代码运行过程,日志输出区记录每次搜索的过程。

bigocheatsheet

这个网站总结了常用算法的时空Big-O复杂性,常见数据结构操作的时间复杂度。

链接直达:https://www.bigocheatsheet.com/

Algorithms-DataStructures-BigONotation

这也是一个可以查看算法分析的网站工具,功能相比bigocheatsheet,更丰富一些。

地址:http://cooervo.github.io/Algo...

以上就是今天要推荐的几个学习数据结构和算法的可视化网站,希望对大家有帮助~

最后给大家分享一个Github仓库,上面有大彬整理的300多本经典的计算机书籍PDF,包括C语言、C++、Java、Python、前端、数据库、操作系统、计算机网络、数据结构和算法、机器学习、编程人生等,可以star一下,下次找书直接在上面搜索,仓库持续更新中~

Github地址https://github.com/Tyson0314/...

版权声明:本文版权归作者所有,遵循 CC 4.0 BY-SA 许可协议, 转载请注明原文链接
https://segmentfault.com/a/1190000043248817