算法学习路线

时间:2024-10-10 07:26:28

算法学习是一条漫长而又苦涩的道路。之所以漫长,是因为有关算法的学习是无穷无尽的,如果你不想经历程序员的35岁之劫难,那就要不断地学习算法,提高自己的不可替代性。之所以是苦涩,是因为算法更像是数学题,对智力是有一定要求的,学习算法的过程中总是会质疑自己,相较于一些学会就能用的技术而言,算法学习进步又不是那么显而易见,但是又是每一个程序员必须经历的。

所以学习的方法很重要,在自己智力、自制力以及一些其他我们无法控制的因素都是固定的情况下,因为这些因素都很难改变,方法的好坏直接决定我们学习的效率。

废话不多说直接附在自己学习的过程和一些资源的推荐。

首先最重要的事情就是

一定要动手自己敲

一定要动手自己敲

一定要动手自己敲

重要的事情说三遍

数据结构

笔者认为算法学习之前,一定要有数据结果的基础,最起码知道那些栈啊,队列啊,如果学习算法过程出现了相关的问题,可以补充一下这方面的知识。

还有一个问的比较多的问题,就是我需要为了算法,学习C或者C++吗?其实问这种问题的大多是大学生,因为大学基本上都是用C编写的数据结构和算法,因为C可以直接操作内存,这样更容易展示数据结构和算法的一些概念。不过大家记住了语言只是工具,没有必要纠结于此。目前还没有说什么只有一种语言能干什么事,别的干不了的说话,只是在面对不同需求,每个语言有自己的优势而已。Java早期的内核还是使用C语言编写的呢。

如果有朋友想了解数据结构的重要性,可以看看这篇文章,能帮你快速了解数据结构。
数据结构的重要性

资源推荐:
1.
如果有C语言基础,推荐大家小甲鱼的C语言数据结构,视频诙谐幽默,笔者在上大学期间,考试前经常观看小甲鱼的视频恶补知识。
/video/BV1jW411K7yg

因为笔者大学之后就再也没有使用过C/C++了,所以在这里推荐一些Java的资料,这也是笔者自己学习使用过的资料,不过有些比较老旧,但是经典永存,内容还是很有含金量的。

数据结构书记推荐

这篇文章推荐了5本关于数据结构的书籍,其中笔者读过并且感觉不错的《数据结构与抽象》

连接送上
链接:/s/1gfJGk-bCgqDB57Z3rm_RFw
提取码:90go

非常经典,适合初学者

算法

推荐Guide哥的一个算法学习路线,讲的非常好,值得一看。Guide的公众号也可以关注,笔者在大学后才发现如此宝藏的公众号,如果早点遇到可能能节约大量时间。

写给Java程序员看的算法学习指南!

这篇文章中也提到过的一本经典之作,就是《算法》

实为经典之作。

Leetcode

算法的学习过程中不得不提到的就是找个网站了,其实上面推荐的两本书,不一定要完全读完读懂,说句实话,笔者从业十几年也不能说完全明白和懂。当你有一定基础的时候,完全就可以刷题了,这时候的学习就变得有趣了,做对一道题立刻就能有所收获。

如何使用Leetcode呢,让我们来看看B站美女程序员怎么说。
/video/BV1nJ411n7dV

课代表总结:

刷题目录
/CyC2018/CS-Notes/blob/master/notes/Leetcode%20%E9%A2%98%E8%A7%A3%20-%20%E7%9B%AE%E5%BD%

推荐的学习频道????????
Youtube :Back To Back SWE
/channel/UCmJz…

B站:
1. 花花酱
/9880352?fr…
2. 小Q刷题
/149758?fro…
3.绵羊教授
/354892788?..