一.入门系列
这些书籍通过图片、打比方等通俗易懂的方法来讲述,让你能达到懂一些基础算法,线性表,堆栈,队列,树,图,DP算法,背包问题等,不要求会实现,但是看过以下这些书对于之后实现算法打下坚实的思维基础。
很适合在闲暇之余拿出来阅读一番。
1.1 《啊哈!算法》
阅读链接:https://book.douban.com/subject/25894685/
这不过是一本有趣的算法书而已。和别的算法书比较,如果硬要说它有什么特点的话,那就是你能看懂它。
推荐理由: 本书中涉及到的数据结构有栈、队列、链表、树、并查集、堆和图等;涉及到的算法有排序、枚举、深度和广度优先搜索、图的遍历,当然还有图论中不可以缺少的四种最短路径算法、两种最小生成树算法、 割点与割边算法、二分图的最大匹配算法等
1.2《算法图解》
阅读链接:https://book.douban.com/subject/26979890/
推荐理由:这本图解书很容易看懂,不枯燥。 书中的前三章将帮助你打下基础,带你学习二分查找、大O表示法、两种基本的数据结构以及递归等。余下的篇幅将主要介绍应用广泛的算法,具体内容包括:面对具体问题时的解决技巧,比如,何时采用贪婪算法或动态规划;散列表的应用;图算法;K最近邻算法。
1.3《妙趣横生的算法(C语言实现 第2版)》
阅读链接:https://book.douban.com/subject/4710825/
推荐理由:理论与实践相结合,旨在帮助读者理解算法,并提高C语言编程能力,培养读者的编程兴趣,并巩固已有的C语言知识。
1.4《趣学算法》
阅读链接:https://book.douban.com/subject/27109832/
推荐理由:非常好的一本书,图解多,思路清晰,不仅讲了问题分析算法设计的过程,还讲了如何优化算法, 使读者体验算法的奥妙