先发个几个 G 的资源截图吧,需要的话在文末获取。
前言:技术书阅读方法论
一.速读一遍(最好在1~2天内完成)
人的大脑记忆力有限,在一天内快速看完一本书会在大脑里留下深刻印象,对于之后复习以及总结都会有特别好的作用。对于每一章的知识,先阅读标题,弄懂大概讲的是什么主题,再去快速看一遍,不懂也没有关系,但是一定要在不懂的地方做个记号,什么记号无所谓,但是要让自己后面再看的时候有个提醒的作用,看看第二次看有没有懂了些。
二.精读一遍(在2周内看完)
有了前面速读的感觉,第二次看会有慢慢深刻了思想和意识的作用,具体为什么不要问我,去问30年后的神经大脑专家,现在人类可能还没有总结出为什么大脑对记忆的完全方法论,但是,就像我们专业程序员,打代码都是先实践,然后就渐渐懂了过程,慢慢懂了原理,所以第二遍读的时候稍微慢下来,2周内搞定。记住一句话:没看完一个章节后,总结一下这个章节讲了啥。很关键。
三.实践(在整个过程中都要)
实践的时候,要注意不用都去实践,最好看着书,敲下代码,把重点的内容敲一遍有个肌肉记忆就很不错了。以及到自己做过的项目中去把每个有涉及的原理的代码,研究一遍,就可以了
一共四个系列整整50+本电子书,找了好久终于齐了,如果都能看完看懂且科学的总结外加合理的实践,相信未来你的技术路会更好走,当然阿里巴巴,腾讯,阿里这些的Offer不将是梦,除了多看点技术书,你觉得还有什么能拿出来和985,211的朋友比呢?
最近在学习算法和数据结构+涉及一点acm方面的知识,看到一篇好的关于数据结构和算法的书籍,如果计算机系只开三门课,那么这三门课就一定是:离散数学,数据结构与算法,编译原理。如果只开一门课,那剩下的就一定是:数据结构与算法。
Niklaus Wirth说:算法+数据结构=程序。
不说废话了,下面列出一份数据结构+算法书单,从入门到进阶说起。
以下是每本书的推荐语,清楚自己缺的是什么,就下定决心去补吧,一个好工作意味着高收入,投资自己的时间换来更宝贵的东西。
一.入门系列
推荐理由:通过图片,打比方等通俗易懂的方法讲述算法的书籍让你能达到懂一些基础算法,线性表,堆栈,队列,树,图,DP算法,背包问题等,不要求会实现,但是看过以下这些书对于之后实现算法打下坚实的思维基础。
1.1《啊哈!算法哈磊》
插图和讲解相当到位~~让人看了很感兴趣,把算法用非常形象的方式表达出来,通俗易懂,这下学习算法的朋友有福了。很有趣。书里面主要本书中涉及到的数据结构有栈、队列、链表、树、并查集、堆和图等;涉及到的算法有排序、枚举、深度和广度优先搜索、图的遍历、最短路径、两种最小生成树、割点与割边、二分图最大匹配。
1.2《算法图解》
算法教科书通常让人昏昏欲睡,麻烦就在于算法是绕不开的必修课。以前大学有这个课程,看过几本算法书,都不太满意,看不懂很打击自信心。
而这本图解书确实有所突破,很容易看懂,不枯燥。书不到200页,我几个小时就看了一半。虽然都是些入门级的算法,经过作者梳理后就很清晰了。
我觉得这是最好的最有趣的算法入门书。媲美国内的《啊哈算法》那本书。
读完本书虽然没有什么高深的算法,但是可以自信地说算法入门了。
1.3《妙趣横生的算法(C语言实现 第2版)》
在有些章节的代码有些错误,会令人误解,但还是一本很不错的书,主要是讲解的非常详细,相比较经典书籍而言,经典书过于简练,再加上中文译者在那卖弄学术,弄得苦涩难读,这本书还是好很多,起码用中国人熟悉的语言由浅入深详细描述基本原理。
1.4《趣学算法》
非常好的一本书,图解多,思路清晰,不仅讲了问题分析算法设计的过程,还讲了如何优化算法,不同的数据结构上设计算法会有什么样的复杂度。值得推荐。
1.5《大话数据结构》
时逢找工作,为笔试准备,需数据结构、数据库、c/c++、计算机系统、网络方面知识。对于数据结构,力荐此书,通俗易懂,非常适合计算机相关专业朋友…
本人本科初学数据结构时对于所谓时间复杂度完全摸不着头脑,虽然凭着绝佳的短期记忆力在中国式考试中拿到高分,但在实际程序设计开发中一无所用,故借此机会重学这方面知识。本书对时间复杂度,即大O阶的推导讲解十分细致,很容易就将“多年顽疾”解决。
由此管窥此书,其他方面知识点也讲得非常清楚,附有大量插图,更是适合对大段文字提不起兴趣的朋友。
1.6《算法神探》
作者很努力把基础的算法写的有趣,作为入门还是不错的。我看的时候以为是数据分析相关的书,但是里面说的是代码基础算法相关的,但是还是很顺畅地看下去了。故事像是小學時看的。
1.7《算法帝国》
作者极富洞察力!配合,随机漫步的傻瓜或者反脆弱 一起阅读体验更全面。
看得出来作者为了完成这本高质量的书做足了功课,刚看完《冯诺依曼传》就看这本,简直是看到了冯诺依曼的远见在今天的现实版本,上世纪20、30年代凯恩斯就预言将来人类会“技术性失业”,他只是提早了90年,算法已经完全占据了世界,甚至将来会主宰人类的命运 看了就该好好思考一下自己的命运了。
1.8《算法设计与分析基础第3版》
对算法做了一个很新颖的划分,可以看到它和我们经常看的算法书的知识点划分很不一样。作者得归类很不错。对一些常用思想做了分类。
比如作者对分治做了几个分类。纯思维层面的切入分析,而不像以前的分为一般算法和图论那样子。书中有不错的习题。思想描述有一定的思维引导性质。
二.进阶系列
推荐理由:在基本入门算法书的调教和领悟下,渐渐懂得一些基础算法是什么,现在就是进阶系列可以参阅,力荐《算法导论》《编程原本》,经典款不解释,当然这些书最好是在入门后再看合适,还有王晓东那本算法书也很不错,有几个版本,可以挑选看还附有课后答案。
2.1《算法导论英文版第三版》
2.1《算法导论中文版》
2.2《算法 (第4版)》
2.3《数据结构与算法 Java版》
2.4《Algorithms算法概论中文版》
2.5《算法心得-高效算法的奥秘(原书第2版)》
2.6《计算机程序设计艺术 第1卷:基本算法(第三版)高清中文版》
2.7《计算机程序设计艺术 第2卷:半数值算法(第三版)高清中文版》
2.8《计算机程序设计艺术 第3卷:排序与查找(第二版)高清中文版》
2.9《数据结构(C语言版)-严蔚敏 吴伟民, 清华大学出版社, 2007》
2.9《计算机算法设计与分析 第4版 (王晓东) 课后答案[1-9章]》
2.9《计算机算法设计与分析(王晓东)(第三版)》
2.9《计算机算法设计与分析(王晓东)(第二版)》
2.9《计算机算法设计与分析(第三版)课后习题答案详解》
2.10《Java数据结构和算法(第二版)》
2.11《编程原本》
2.12《算法设计手册第2版 中文版330页》
2.13《JavaScrit数据结构与算法(第2版)》
2.14《数据结构与算法分析:C语言描述(原书第2版)》
2.15《数据结构与算法Python语言描述》
三.算法题系列
推荐理由:一些题海讲解具体的算法思想应用在题目上是怎么求解的,想刷题的可以看看结合各大OJ+leetCode一起学习。多刷题总不会错。
3.1《挑战程序设计竞赛(第2版)》
3.2《算法艺术与信息学竞赛(清华大学出版社)》
3.3《算法谜题》
3.4《编程高手箴言》
四.实用工作系列
推荐理由:在面试和工作中经常要用到的算法讲解,以及一些过来人工程师的心血总结,建议在面试前翻看,提升思维广度,外加一些实操。
4.1《编程之法 面试和算法心得》
4.2《程序员代码面试指南 IT名企算法与数据结构题目最优解 》
4.3《算法Ⅰ-Ⅳ(C++ 实现)–基础、数据结构、排序和搜索(第三版)》
4.4《程序员实用算法》
4.5《编程珠玑(第2版)》
4.6《编程之美》
4.7《程序调试思想与实践》
4.8《[改变未来的九大算法]管策》
4.9《排序算法汇总》
4.10《算法与数据结构-实用算法基础教程》
五.算法奇门遁甲系列
推荐理由:包括一些可能在图形学,游戏设计,数据挖掘方面的算法书,偏冷门,乃大佬可以赏读的系列书籍
5.1《matlab数学建模算法全收录 799页 47M 超清书签版》
5.2《常用数据挖掘算法总结及ython实现》
5.3《机器学习十大算法》
5.4《计算机程序设计艺术 The Art o Comuter rogramming 第2卷(第3版)英文版》
5.5《算法百科 Encycloeia o Algorithms》
5.6《智能Web算法(中文版)》
5.7《现代计算机常用数据结构与算法》
5.8《数据挖掘原理与算法》
5.9《计算几何–算法与应用(中文第三版)》
5.10《数值最优化算法(numerical otimization)》
5.11《计算机图形学原理及算法教程(Visual C++版)-和青芳 清华大学》
5.12《算法概论(Algorithm)》
5.13《数据结构教程电子版 》
5.14《图论中的常用经典算法》
总结:天下没有不劳而获的果实,望各位年轻的朋友,想学技术的朋友,在决心扎入技术道路的路上披荆斩棘,把书弄懂了,再去敲代码,把原理弄懂了,再去实践,将会带给你的人生,你的工作,你的未来一个美梦。
微信搜索「程序员吴师兄」关注后,在后台回复「pdf」即可获取本文提到的书 籍电子版 pdf
也可以截图后,微信扫码关注