顶级程序员都在看,这份豆瓣高分算法书单可以收藏

算法最开始是数学概念,我国古代称之为“术”,最早出现在《周髀算经》和《九章算术》中 。而现代计算机中的算法的定义,则是在阿朗佐·丘奇 和他的学生艾伦·图灵的丘奇-图灵论文基础上建立的 。
在脱离实践应用的时候,算法和“术”都是比较枯燥且难以理解的,所以大多数人学算法的时候都希望教程、书籍可以更有效地消除算法与实际问题之间的沟壑,从而真正地理解算法,并且知道如何选择、设计算法来解决问题 。
小异这次就挑选了几本很好处理了这个问题的算法好书,其中的示例有的来自真实业务项目、有的来自有趣故事、有的来自经典题例、有的来自顶尖科技企业面试、有的来自奇妙的大自然,都把算法落实到了问题上 。
不同层次和需求的读者,都能找到适合自己的算法书,去理解算法思想,解决实际问题 。
01
计算之魂

顶级程序员都在看,这份豆瓣高分算法书单可以收藏

文章插图
 
豆瓣评分9.3!用世界顶尖科技企业面试题来锻炼自己的计算思维 。
吴军老师总结了信息技术行业的发展铁律:对计算机科学的掌握程度,决定了一个计算机行业从业者能走多远 。
在这本书中,他用不同层次的解决思路和方法详细阐述了每道题目背后的计算机科学精髓,帮读者充分理解题目和算法之外,更理解企业通过面试题想要了解面试者的何种能力和特质 。
通过学习本书,读者不仅能掌握坚实的算法知识,也能更深层次地了解计算机科学、认识信息技术产业的技术特点,从而掌握进阶自身的筹码 。
021
趣学算法(第2版)
顶级程序员都在看,这份豆瓣高分算法书单可以收藏

文章插图
简单,简单,更简单!这就是作者写《趣学算法》的初衷 。
本书是通过趣味故事引出算法问题,然后分析算法本质、并给出代码实现的详细过程和运行结果 。对新手来说,不用去看高深的原理,不用去解枯燥的数学公式,就是优先选择了 。
正是因为面向真正的新手,本书从示例到代码、从图示到问题描述,都是最大程度上的简洁、通俗易懂,初中生都能毫无压力地读懂算法 。
对新手来说,从实践中认识算法是更直接且高效的方法,本书作为新手算法入门是一个不错的选择 。
03
编程珠玑 第2版
顶级程序员都在看,这份豆瓣高分算法书单可以收藏

文章插图
 
豆瓣评分9.1,这是一本真正的计算机科学经典名著,激励了无数程序员 。
作为影响算法发展的十位大师之一乔恩·本特利围绕性能问题,在本书中讨论了计算机科学本质问题:如何正确地选择和高效地实现算法 。
本书最大的特点就是精悍且深邃,作者使用有趣的案例来描述算法本质,而不是代码实现,意在让读者充分理解解决问题的思想 。所以如书名所言,其中内容字字珠玑,寥寥数语就道尽算法的使用场景、技术解析和应用扩展 。
本书适合有一定基础的读者阅读,通过反复阅读认真体会大师的编程思想,化为己用而达到算法进阶 。
04
编程珠玑 续
顶级程序员都在看,这份豆瓣高分算法书单可以收藏

文章插图
 
这是《编程珠玑》的姊妹篇,起于算法而不止讲算法 。
本书除了讲绝妙的取样算法、数值算法、选择算法之外,主要讲解了一些作者自己总结的编程中的使用技巧,比如关联数组、监控性能、估算等 。每一个部分,他都对问题进行了清晰而简洁的描述,然后对其进行分析,给出解决思路、方法,并解释其原理 。
作者针对书中提到的问题都设计了有趣而具指导意义的程序,并阐述了这些程序设计的原则与技巧,能够有效帮助读者提升开发能力 。
05
算法设计
顶级程序员都在看,这份豆瓣高分算法书单可以收藏

文章插图
 
豆瓣评分9.3!本书凝练了康奈尔大学多年来在算法教学上的积累,是诸多名校都在使用的经典教材 。
本书侧重算法的设计思路,每一个章节都是从实际问题出发,然后对问题进行具体的分析引出相应的算法设计思想,并对其正确性和复杂性进行合理的论证 。
这种把算法理论与实际问题结合起来的方式,能够更有效地帮助读者认识算法的原理,并更快地掌握算法在实际编程中的应用,面试算法题简直手到擒来 。
书中200多个习题,都是在历次算法课堂上经过无数学生讨论过的,充分体现了算法在各个领域中的应用与实现,读者可以通过练习题,循序渐进地巩固、加深对算法的认识 。


推荐阅读