作为每一个学习计算机的大学生而言,最苦的莫过于学习数据结构与算法了,为啥啊?
不知道你是不是这样,反正我当初是这样,而且据我后来所知,好像大部分程序员都是这样。 我们刚开始上大学的时候学习数据结构与算法真的觉得很难?即使你很聪明,想必学习起来也有点吃力吧,我现在看来大致有如下两个原因导致我们大学的时候数据结构与算法学的都不好:
如此一来啊,我们毫不意外的在大学的时候就把数据结构和算法给落下了,当然,不乏那些学的好的,我们这些渣渣,只能看着他们校招进大厂,然后幻想他们走上人生巅峰,赢取白富美了…… 其实吧,数据结构与算法本身而言确实是有难度的,但是嘞,只要我们肯下功夫,多花时间学习和练习,那学习数据结构与算法也是不成问题的,当然,如果再加上这些网站的加持,那你学好起来就会更加得心应手了 学算法必去的一个网站首先有一个网站那是每一个学习数据结构与算法都必须去的网站,说出来你就知道了,那就是大名鼎鼎的LeetCode,就是它:https:/// 因为这个网站实在牛杯,所以现在已经有了国内版也就是中文版“力扣”,你们打开https:///不出意外会自动跳转到这里: 中文版长这个样子的:点开探索给你看看 在这里插入图片描述 强烈人手一个啊!不骗你! 那些可视化网站接下来就是在你学习数据结构与算法的道路上不得不知的几个可视化网站,啥意思嘞,我们在学习数据结构与算法的时候,之所以会觉得比较难,很大一部分是因为数据结构与算法比较抽象,我们理解起来比较困难,所以啊,理解数据结构与算法的一个最佳方法就是看看他们的实际用法,而这一点,我们可以通过一些可视化动画来强化我们的理解,以下的这些网站都是可以让你直观的观察数据结构与算的可视化网站。 Data Structure Visualizations链接直达:Data Structure Visualizations 它张这个样子: 可能有人说看不懂了,没事,给你翻一下: 可能有人说不会用,没事给你简单演示下,比如二叉搜索树: 你可以自己试试,保准一用就会! visualgo链接直达:https:///zh 在这里插入图片描述 看着心动吗?我们继续看看其中的操作: 在这里插入图片描述 自己赶紧去试试吧! BinaryTreeGraph链接直达: 这个主要是平衡树这块的可视化操作,我经常用这个网站,真的挺不错的,还有个对应的开源项目,是打印二叉树的,感兴趣的可以看看:https://github.com/CoderMJLee/BinaryTrees BinaryTreeVisualiser链接直达:http://btv./home.html 在这里插入图片描述 这个主要是二叉树相关的,比方说二叉搜索树,你看看,是这样的: 操作其实很简单的,你们可以去试试看! btree-js链接直达:https://yangez./btree-js/ 这是一个专门演示B树的,也不错! Algorithm Visualizer链接直达:https:/// 这是我比较喜欢的一个,这可是个牛杯的家伙,给你们看看: 是不是看起来很专业的样子,哈哈,翻译一下再看看: 看出来了吧,这主要是个算法可视化网站,主要就是讲解各种算法的,真的很棒,它可是支持代码的,有js,java和c++,比如我这里的java 然后就会在右边出现相关的java代码: 然后我们可以点击这里运行: 就问你强不强大,赶紧去试试吧! 算法分析相关网站bigocheatsheet链接直达:https://www./ 就给你这个图应该知道它是干嘛的了吧,赶紧收藏起来,很有用的,真的真的…… 我们继续…… Algorithms-DataStructures-BigONotation链接直达:http://cooervo./Algorithms-DataStructures-BigONotation/index.html 这个也是一个可以查看算法分析的网站,但是人家不止于此: 这就需要你们自己去探索发掘啦! 小彩蛋我们很多初学数据结构与算法的小伙伴,在刚开始会比较疑惑这个大0表示法是个啥玩意,这里有个Stack Overflow上的热门回答,挺不错的,推荐给你们: https:///questions/487258/what-is-a-plain-english-explanation-of-big-o-notation 感谢各位大大的阅读 |
|