当前位置:   article > 正文

数据结构与算法学习路线

数据结构与算法学习路线

这部分知识相当于C语言的进阶知识啦,而且这些知识对所有语言是通用的,把它比作编程语言的灵魂毫不为过。

图片

1一、入门

  1. 《大话数据结构》

这本书最大的特点是,它把理论讲得很有趣,不枯燥。而且每个数据结构和算法,作者都结合生活中的例子进行了讲解, 能让你有非常直观的感受。

  1. 《算法图解》

主打“图解”,通俗易懂。它只有不到 200 页,所以内容比较少。作为入门,看看这本书,能让你对数据结构和算法有个大概的认识。

2二、基础

  1. 《数据结构与算法分析 :C 语言描述》

这本书非常系统、全面、严谨,而且又不是特别难,适合对数据结构和算法有些了解,并且掌握了至少一门编程语言的同学。

  1. 算法设计与分析基础(豆瓣评分8.7)

本书十分适合用作算法设计和分析的基础教材,也适合任何有兴趣探究算法奥秘的读者使用,只要读者具备数据结构和离散数学的知识即可。

  1. 算法详解(卷1)——算法基础(豆瓣评分8.8)

本书为对算法感兴趣的广大读者提供了丰富而实用的资料,能够帮助读者提升算法思维能力。本书适合计算机专业的高校教师和学生,想要培养和训练算法思维和计算思维的IT专业人士,以及在准备面试的应聘者和面试官阅读参考。

3三、进阶

这三本书非常经典,但都很厚,看起来比较费劲,估计很少有人能全部看完。但如果想更深入地学一遍数据结构和算法,还是建议去看看。

  1. 《算法导论》

章节安排不是循序渐进,里面有各种算法正确性、复杂度的证明、推导,对数学功底有一定要求,看起来有些费劲。

  1. 《算法》

偏重讲算法。内容不够全面,对数据结构方面的知识讲的不多,动态规划这么重要的知识点却没有讲。

  1. 《计算机程序设计艺术》

这本书包括很多卷,相比于其他书籍有更好的深度、广度、系统性和全面性。但如果你对数据结构和算法不是特别感兴趣,没有很好的数学、算法、计算机基础,很难把这本书读完、读懂。

4四、实战

动手写代码动手写代码!

  1. LeetCode:图解算法数据结构 力扣

总结的非常全,将数据结构和算法分类,并提供了实战题目和对应的题解。强烈推荐!

图片

  1. 网友总结的算法思维系列:

fucking-algorithm/算法思维系列 at master · labuladong/fucking-algorithm

5五、面试

  1. 《剑指 offer》

这本书几乎包含了所有常见的、经典的面试题。如果能搞懂这本书里的内容,应付一般公司的面试应该不成问题。

  1. 《编程珠玑》

这本书的豆瓣评分非常高,有 9 分。这本书最大的特色就是讲了很多针对海量数据的处理技巧。这个可能是其他算法书籍很少涉及的。面试的时候,海量数据处理的问题也是经常会问的,特别是校招面试。不管是开拓眼界,还是应付面试,这本书都很值得一看。

  1. 《编程之美》

这本书有多位作者,其中绝大部分是微软的工程师,所以书的质量很有保证。不过,这里面的算法题目稍微有点难,也不是很系统,这也是我把它归到面试这一部分的原因。如果你有一定基础,也喜欢钻研些算法问题,或者要面试 Google、Facebook 这样的公司,可以拿这本书里的题,先来自测一下。

6六、课外阅读

比较适合在平时悠闲的时候翻翻看看,这些书都列举了大量的列子来解释说明,非常通俗易懂。

  1. 《算法帝国》
  2. 《数学之美》
  3. 《算法之美》

推荐这几本书:

  1. 彭军和向毅的《数据结构与算法》

跟完教学视频:

  1. 数据结构:浙江大学的国家精品慕课视频,里面的配套练习非常丰富,对小白也非常友好。

**多做OJ题:**有关数据结构和算法的Online Judge都是有一定的难度的,想要搞ACM的话推荐几个Online Judge系统。

  1. 北京大学的Online Judge
  2. 杭州电子科技大学的OJ

经典数据结构和算法题:

  1. 逆波兰算术表达式 :栈的运用
  2. 二叉树前序/中序/后序遍历:二叉树的遍历
  3. 合并果子 :堆(二叉树的一种)的运用
  4. 贪吃蛇最短路径寻食:广度优先搜索算法(用到队列)
  5. 贪吃蛇最快路径选择:深度优先搜索算法(用到栈)
  6. 遗传算法计算函数零点:用到遗传算法的思想

7可视化展现

  1. visualgo

https://visualgo.net/zh涵盖了主流的数据结构,可视化展示,支持对其进行各种操作,以及提供了很多示例

  1. Data Structure Visualizations

https://www.cs.usfca.edu/~galles/visualization/Algorithms.html同样是涵盖了主流数据结构和算法,提供动态演示功能。

说句题外话

今年很多人都在讨论一个问题:就业形势险峻,毕业生们怎么办?
错过了春招,秋招竞争激励,现在投了几十份简历却还都石沉大海,22/23届同学烦得头都快秃了。
在这里插入图片描述
其实你没事多去招聘网站上看看,你会发现不少基础岗位的招聘都写上了对python的技能要求,这也就意味着,会写程序的人会更吃香。

现在的社会,时代已经不同了,它在加速淘汰不会学习的人,所以大学期间多学点东西,不要毫无准备的去接受社会的毒打!

在这里插入图片描述
在这里插入图片描述
就算是在非专业技术领域python几乎都可以用到,特别是自动化办公和数据处理方面,python有独特的优势。而python入门相对简单,对大学生来说是一门好上手学的编程语言,就算不是找工作,利用python兼职赚点零花钱也不错啊!

如今是一个大数据的时代,Python 在行为收集和数据分析,信息采集等方面的应用已经非常非常普遍,早就不是程序员的专属技能了。就像 office 一样,是Python 已经成为了进入职场的必备技能。不是很意外,但这就是正在发生的大趋势。
在这里插入图片描述
Python的特点

1.需求大:百度、新浪、搜狐、淘宝、腾讯QQ等大部门的互联网相关企业都在利用Python,对Python的人才需求很大
在这里插入图片描述
2.开展空间广:在无孔不入的互联网使用情况下,人工智能、大数据等领域非常适合Python的发展,这也就阐明了挑选进修Python将会有很不错的发展空间。

3.简单易学:小学生也可以上手学习的计算机语言。举个例子一个程序用C语言需要1000行的代码,用JAVA需要写100行,但是如果用Python你只需要20行,语法很简洁。

Python岗位薪资水平如何?
在这里插入图片描述
在这里插入图片描述

Python如何学习?

今天只要你给我的文章点赞,我私藏的Python学习资料一样免费共享给你们,来看看有哪些东西。

Python学习大礼包

在这里插入图片描述

Python入门到精通背记手册

在这里插入图片描述
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/486233
推荐阅读
相关标签