一、学算法必去的一个网站
首先有一个网站那是每一个学习数据结构与算法都必须去的网站,说出来你就知道了,那就是大名鼎鼎的LeetCode。
链接直达:https://leetcode.com/
中文版长这个样子的:点开探索给你看看
强烈推荐人手一个啊!不骗你!
二、数据结构可视化网站
接下来就是在你学习数据结构与算法的道路上不得不知的几个可视化网站,啥意思嘞,我们在学习数据结构与算法的时候,之所以会觉得比较难,很大一部分是因为数据结构与算法比较抽象,我们理解起来比较困难,所以啊,理解数据结构与算法的一个最佳方法就是看看他们的实际用法,而这一点,我们可以通过一些可视化动画来强化我们的理解,以下的这些网站都是可以让你直观的观察数据结构与算的可视化网站。
1、Data Structure Visualizations——数据结构可视化
链接直达:Data Structure Visualizations
2、visualgo——数据结构和算法动态可视化
链接直达:https://visualgo.net/zh
看着心动吗?我们继续看看其中的操作:
3、BinaryTreeGraph——平衡树可视化
链接直达:http://520it.com/binarytrees/
这个主要是平衡树这块的可视化操作,我经常用这个网站,真的挺不错的,还有个对应的开源项目,是打印二叉树的,感兴趣的可以看看:https://github.com/CoderMJLee/BinaryTrees
4、BinaryTreeVisualiser——二叉树可视化
链接直达:http://btv.melezinek.cz/home.html
5、btree-js——B树可视化
链接直达:https://yangez.github.io/btree-js/
这是一个专门演示B树的,也不错!
三、算法分析相关网站
1、Algorithm Visualizer——算法可视化
链接直达:https://algorithm-visualizer.org/
这是我比较喜欢的一个,这家伙可牛逼了,给你们看看:
看出来了吧,这主要是个算法可视化网站,主要就是讲解各种算法的,真的很棒,它可是支持代码的,有js,java和c++,比如我这里的java
然后就会在右边出现相关的java代码:
然后我们可以点击这里运行:
就问你强不强大,牛不牛掰!
2、bigocheatsheet——常用算法的时空Big-O复杂性
链接直达:https://www.bigocheatsheet.com/
3、Algorithms-DataStructures-BigONotation
链接直达:http://cooervo.github.io/Algorithms-DataStructures-BigONotation/index.html
这个也是一个可以查看算法分析的网站,但是人家不止于此:
这就需要你们自己去探索发掘啦!