热门回答:
计算机类书籍有很多。关于编程的应该占了绝大部分。但是真正的了解计算机不止只会一些编程就可以的。需要了解一些基础知识。有了这些知识的加持。你才能更好的提升自己。所以很多编程的高手经常看恰恰是这类基础知识。
计算机是利用信息获取、表示、存储、处理、控制等的理论、原则、方法和技术来用于实践中的学科。
基础方面:首先推荐一本算法导论。
比较适合有编程语言基础的读者。它把数据结构中的算法从基础到非常深入全部都包括了。个人建议你先把C语言用熟悉了。然后再去看算法导论。如果有决心看完。数据结构都不用看。因为你看完算法导论。就等于学会了非常高级的数据结构。原书很厚。对于时间不多的人。看完很难。大多数人都拿它当做一本字典。不会了就去上面找。有空就看看。
基础类之:数据库系统概念
该书全面介绍数据库系统的各种知识。透彻阐释数据库管理的基本概念。本书内容丰富。不仅讨论了关系数据模型和关系语言、数据库设计过程、关系数据库理论、数据库应用设计和开发、数据存储结构、数据存取技术、查询优化方法、事务处理系统和并发控制、故障恢复技术、数据仓库和数据挖掘。而且对性能调整、性能评测标准、数据库应用测试和标准化、空间和地理数据、时间数据、多媒体数据、移动和个人数据库管理以及事务处理监控器、事务工作流、电子商务、高性能事务系统、实时事务系统和持续长时间的事务等高级应用主题进行了广泛讨论。
基础类型:现代操作系统
该书的作者Andrew S. Tanenbaum当年为了教授操作系统课程发明了MINIX。而MINIX就是最早的Linux原型。Tanenbaum的书写得都非常好。操作系统的知识娓娓道来。由浅入深慢慢深入到操作系统的内部。该书相比作者的另一本描述操作系统实现的书。增加了现代操作系统中的新特性。比如多处理机系统。虚拟化。分布式系统等内容。同时该书还有配有案例研究。对于几种流行的操作系统进行了分析。使你能对知识有更深刻的了解。当然这本书的内容是非常经典的。线程。锁的概念几乎是每个程序员的必备知识。它是你进行多线程编程时的基础;文件系统。I/O原理可以说是嵌入式的基础。最后说下该书的翻译。总体来说我觉得不错。行文流畅。把原作者的意思也表达得比较清楚。毕竟译者从第一版翻译到了第三版。
其他观点:
我就从一个算法初学者的角度来回答一下吧。
推荐一下「算法与数据结构」从入门到进阶的书单。
一.入门系列
这些书籍通过图片、打比方等通俗易懂的方法来讲述。让你能达到懂一些基础算法。线性表。堆栈。队列。树。图。DP算法。背包问题等。不要求会实现。但是看过以下这些书对于之后实现算法打下坚实的思维基础。
很适合在闲暇之余拿出来阅读一番。
阅读链接:https://book.douban.com/subject/25894685/
这不过是一本有趣的算法书而已。和别的算法书比较。如果硬要说它有什么特点的话。那就是你能看懂它。
推荐理由: 本书中涉及到的数据结构有栈、队列、链表、树、并查集、堆和图等;涉及到的算法有排序、枚举、深度和广度优先搜索、图的遍历。当然还有图论中不可以缺少的四种最短路径算法、两种最小生成树算法、 割点与割边算法、二分图的最大匹配算法等
阅读链接:https://book.douban.com/subject/26979890/
推荐理由:这本图解书很容易看懂。不枯燥。书中的前三章将帮助你打下基础。带你学习二分查找、大O表示法、两种基本的数据结构以及递归等。余下的篇幅将主要介绍应用广泛的算法。具体内容包括:面对具体问题时的解决技巧。比如。何时采用贪婪算法或动态规划;散列表的应用;图算法;K最近邻算法。
阅读链接:https://book.douban.com/subject/4710825/
推荐理由:理论与实践相结合。旨在帮助读者理解算法。并提高C语言编程能力。培养读者的编程兴趣。并巩固已有的C语言知识。
阅读链接:https://book.douban.com/subject/27109832/
推荐理由:非常好的一本书。图解多。思路清晰。不仅讲了问题分析算法设计的过程。还讲了如何优化算法。使读者体验算法的奥妙
阅读链接:https://book.douban.com/subject/6424904/
推荐理由:文中附有大量插图。适合对大段文字提不起兴趣的朋友。以一个计算机教师教学为场景。讲解数据结构和相关算法的知识。通篇以一种趣味方式来叙述。大量引用了各种各样的生活知识来类比。并充分运用图形语言来体现抽象内容。对数据结构所涉及到的一些经典算法做到逐行分析、多算法比较。与市场上的同类数据结构图书相比。本书内容趣味易读。算法讲解细致深刻。是一本非常适合自学的读物。
1.6 《学习算法思想 修炼编程内功》
慕课网链接:https://coding.imooc.com/class/71.html
推荐理由:视频课程。这样精致的课程很难找到第二个。我暂时还没看过比这个课程能更好的进行算法入门了。小吴的PPT制作动画灵感就是来源于此。
二.基础系列
通过基本入门算法书的调教。你已经逐渐体会到了算法的魅力。现在正是时候去阅读基础系列踏入算法的领域!!!
这些书籍需要你费点心思去阅读。
阅读链接:https://book.douban.com/subject/20432061/
排在基础系列第一的位置应该没意见吧:)
推荐理由:本书将严谨性和全面性融为一体。深入讨论各类算法。并着力使这些算法的设计和分析能为各个层次的读者接受。
阅读链接:https://book.douban.com/subject/21519616/
适合想通过Java语言来学习算法的小伙伴们。
推荐理由:本书把算法分析与最有效率的Java程序的开发有机地结合起来。深入分析每种算法。内容全面、缜密严格。并细致讲解精心构造程序的方法。
阅读链接:https://book.douban.com/subject/26702568/
适合想通过Python语言来学习算法的小伙伴们。
推荐理由:本书基于Python语言介绍了数据结构与算法的基本知识。主要内容包括抽象数据类型和Python面向对象程序设计、线性表、字符串、栈和队列、二叉树和树、集合、排序以及算法的基本知识。本书延续问题求解的思路。从解决问题的目标来组织教学内容。注重理论与实践的并用。
阅读链接:https://book.douban.com/subject/26639401/
适合想通过JavaScrit语言来学习算法的小伙伴们。
推荐理由:本书首先介绍了JavaScript语言的基础知识。接下来讨论了数组、栈、队列、链表、集合、字典、散列表、树、图等数据结构。之后探讨了各种排序和搜索算法。包括冒泡排序、选择排序、插入排序、归并排序、快速排序、顺序搜索、二分搜索。还介绍了动态规划和贪心算法等常用的高级算法及相关知识。
阅读链接:https://book.douban.com/subject/1139426/
适合想通过C语言来学习算法的小伙伴们。
推荐理由:在本书中。作者更加精炼并强化了他对算法和数据结构方面创新的处理方法。通过C程序的实现。着重阐述了抽象数据类型的概念。并对算法的效率、性能和运行时间进行了分析。
阅读链接:https://book.douban.com/subject/1971825/
适合想通过C++语言来学习算法的小伙伴们。
推荐理由:这是是数据结构和算法分析的经典教材。书中使用主流的程序设计语言C++作为具体的实现语言。
三.进阶系列
掌握了一定的数据结构与算法的知识。现在你已经是一名合格的程序员了。但如果你想要参加面试。那就需要阅读以下书籍进行准备了。
这些书籍需要你花费时间和精力去仔细阅读。但为了涨薪。值得!
阅读链接:https://book.douban.com/subject/27008702/
我想。只要是程序员应该都听说过这本书吧。哪怕你没看过。
推荐理由:《剑指Offer:名企面试官精讲典型编程题(第2版)》剖析了80个典型的编程面试题。系统整理基础知识、代码质量、解题思路、优化效率和综合能力这5个面试要点。
阅读链接:https://book.douban.com/subject/25805152/
推荐理由:算法是计算机科学领域最重要的基石之一。算法谜题。就是能够直接或间接地采用算法来加以解决的谜题。求解算法谜题是培养和锻炼算法思维能力一种最有效和最有乐趣的途径。
阅读链接:https://book.douban.com/subject/26641732/
推荐理由:本书涉及面试、算法、机器学习三个主题。书中的每道编程题目都给出了多种思路、多种解法。不断优化、逐层递进。
四.工作系列
适合已经工作的程序员阅读。可以提升你的思维广度。也可以在面试前翻一翻。
阅读链接:https://book.douban.com/subject/26302533/
历史上最伟大的计算机科学著作之一!!!
推荐理由:融深邃思想、实战技术与趣味轶事于一炉的奇书。带你真正领略计算机科学之美。
阅读链接:https://book.douban.com/subject/3923731/
推荐理由:《程序员实用算法》重点关注的是实用、立即可用的代码。并且广泛讨论了可移植性和特定于实现的细节。《程序员实用算法》作者介绍了一些有用但很少被讨论的算法。它们可用于语音查找、日期、B树和索引文件、数据压缩、任意精度的算术、校验和与数据验证。并且还最全面地介绍了查找例程、排序算法和数据结构。
阅读链接:https://book.douban.com/subject/3004255/
推荐理由:这本书收集了约60道算法和程序设计题目。这些题目大部分在近年的笔试、面试中出现过。或者是被微软员工热烈讨论过。作者试图从书中各种有趣的问题出发。引导读者发现问题。分析问题。解决问题。寻找更优的解法。
五.大佬系列
适合大佬们踏入的领域。小吴膜拜中。
阅读链接:https://book.douban.com/subject/2341863/
推荐理由:内容覆盖面最广。除了所有书都有的内容外。还包括FOIL算法和空间数据挖掘等。
阅读链接:https://book.douban.com/subject/3288908/
推荐理由:非常实用的宝典。看了这本书。如果有工具。可以解决大部分问题。
End
当你计划开始学习一门课程、阅读一本经典教材时。请先明确你要期望达到的目标。具体来说。就是问自己一个问题:
我期望从这本书中收获哪些东西?
不同的课程、不同的书籍。期望的目标应该是不一样的。并且是越具体越好。
比如看上面的入门系列。可以抱着娱乐的心态在业余时间看看。而看基础系列。就要规划好一段时间。边看边做笔记。
推荐一个金老师的学习方法给小伙伴们:多遍扫描法。
第一遍是略读。把一本书从头翻到尾。快速地阅读。不深钻细节。只看背景、结论和实际应用。即使遇到看不懂的地方也不要停下来。继续看下去。这一遍的目的是让你对这本书有一个总体上的印象。基于这个印象。你就能确定全书哪里难。哪里易。哪里是重点。这样就能制定下一步的攻读策略。
第二遍则是“细读”与“攻读”。选择你感兴趣的。感觉最重要的内容慢慢地读。可以采用一些行之有效的阅读手段(比如记要点然后尝试回顾、绘制思维导图等)吸收书中的知识。对于难点。关键是弄明白为什么你看不懂(数学公式看不懂?关键术语不明白?翻译有问题?)。你就能对症下药了。比如本书写得太抽象。可以先看看比较浅显的科普类书籍。之后再回过头来再看。或者找几本不同作者写的类似的教材对照着看……
上述过程可能需要重复几次。并且可能前后两次之间会间隔一个较长的时间。
人学习特定领域的知识需要一个过程。并且需要反复的。
所以要耐心。学习是很少有可能毕其功于一役的。
简单推荐了一些我比较喜欢的书籍。如果都能看完看懂且科学的总结外加合理的实践。相信未来你的技术路会更好走。当然BATJ这些的Offer也不在话下。
除了多看点技术书。你觉得还有什么能拿出来和985,211的朋友比呢?
与君共勉:)
私信我 书单 送你算法编程书籍
其他观点:
由于计算机科学是一个庞大的学科体系。在学习的过程中要对这个体系的知识都有一定的了解。下面按照分类和体系进行说明。以及推荐一些书籍清单。
底层
《算法导论》
MIT 的经典算法教材。虽然可能其中的伪代码表示法不适合所有的人轻松阅读。但是对于算法描述的地位依然非常靠前。
《具体数学》
本书介绍了计算机的数学基础。内容涉及求和、取整函数、数论、二项式系数、特殊数、母函数(发生函数)、离散概率、渐近等。面向从事计算机科学、计算数学、计算技术诸方面工作的人员。以及高等院校相关专业的师生。
这三本书分别由人民邮电出版社。和机械工业出版社引进(也是所谓黑皮系列书籍)。建议的阅读这三本书分别由人民邮电出版社。和机械工业出版社引进(也是所谓黑皮系列书籍)。建议的阅读科。一般看完之后也能对目前正在运作的计算机有一个更好的理解。
编程语言
C++ 作为一个编程语言的主力军。目前依然建议大家学习。除了大家都推荐的 C++ Primer 以外。由于 C++ 的版本一直在迭代。所以这里推荐一些没有那么主流的书。如下:
《C++ 编程规范》
两位知名的 C++ 专家将全球 C++ 界 20 年的集体智慧和经验凝结成一套编程规范。这些规范可以作为每一个开发团队制定实际开发规范的基础。更是每一位C++程序员应该遵循的行事准则。书中对每一条规范都给出了精确的描述。并辅以实例说明。
豆瓣评分:8.2
《 超越 C++ 标准库》
Boost 库是除了标准库之外。很实用的一个库。这本书作为 Boost 的入门书已经超越了导读功能。
豆瓣评分:7.5
《Effective Modern C++》
C++11 虽然填上了一些 C++98 的坑。但又引入了不少新坑。很多新特性并不像它们表面上看起来那样简单。不过 Meyers 确实功力深厚。每个特性的前因后果都讲得一清二楚。给出的使用建议也很贴合实际。
Python 相关。这里需要注意的是。现在的主流标准已经是 Python 3。应该尽量避免看 Python 2的书:
豆瓣评分:9.6
《Python Cookbook》
这是一本入门书。《Python Cookbook(第3版)中文版》介绍了 Python 应用在各个领域中的一些使用技巧和方法。其主题涵盖了数据结构和算法。字符串和文本。数字、日期和时间。迭代器和生成器。文件和 I/O。数据编码与处理。函数。类与对象。元编程。模块和包。网络和 Web 编程。并发。实用脚本和系统管理。测试、调试以及异常。C 语言扩展等。
豆瓣评分:8.6
编程范式
除了对于常见编程语言的掌握以及一些实际的项目经验外。对于编程范式的理解也可以使你的能力提升一个档次。这里推荐:
《Head First 设计模式》
这本书每章都介绍了几个设计模式。完整地涵盖了四人组版本全部 23 个设计模式。前言先介绍这前言先介绍这本书的用法;第 1 章到第 11 章陆续介绍的设计模式为 Strategy、Observer、Decorator、AbstractFactory、Factory Method、Singleton。Command、Adapter、Facade、TemplateMethod、Iterator、Composite、State、Proxy.
豆瓣评分:9.2
《七周七语言——理解多种编程范型》
书中介绍了 Ruby、Io、Prolog、Scala、Erlang、Clojure 和 Haskell 这七种语言。关注每一门语言的精髓和特性。重点解决如下问题:这门语言的类型模型是什么。编程范式是什么。如何与其交互。有哪些决策构造和核心数据结构。有哪些独特的核心特性。
工程向开发
不仅仅是软件工程。而是在面向工程的开发。即一个成熟的大型软件是如何组织。编写的。这里推荐:
《敏捷软件开发》
这本书深入而生动地使用真实案例讲解了面向对象设计的基本原则、重要的设计模式、UML 和敏捷方法。
豆瓣评分:9.1
《重构——改善既有代码的设计》
这本书解释了重构的原理(principles)和最佳实践方式(best practices)。并指出在何时何地你应该开始挖掘你的代码以求改善。
豆瓣评分:9.1
您还感兴趣的文章推荐
- 在北京月入14k,这种情况下要不要离职呢?
- 27岁:考研还是考公?该如何做出选择?
- 如何平衡自己的时间与陪伴孩子的时间?有哪些实用方法?
- 大专女生学前教育毕业一年多,有两家园工作经验想转行该咋办?
- 普通人怎样做才能挣到钱?有哪些途径和方法?
以上就是由互联网推广工程师 网创网 整理编辑的,如果觉得有帮助欢迎收藏转发~
本文地址:https://www.wangchuang8.com/204877.html,转载请说明来源于:网创推广网
声明:本站部分文章来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系进行处理。分享目的仅供大家学习与参考,不代表本站立场。
评论(2)
算法,数据结构,本书,理由,链接,语言,基础,书中,这本书,知识
没想到大家都对有什么计算机经典书籍推荐?感兴趣,不过这这篇解答确实也是太好了
计算机类书籍有很多。关于编程的应该占了绝大部分。但是真正的了解计算机不止只会一些编程就可以的。需要了解一些基础知识。有了