很早就想回答这个问题,也想顺便重构一下自己的书单。我会从下面下个方向来推荐:
- 入门
- 经典
- 面试
书籍推荐
相关推荐:《70k Star Java开源项目出PDF阅读版本啦!》
「《算法图解》(豆瓣评分 8.4,1.5K+人评价)」
入门类型的书籍,读起来比较浅显易懂,非常适合没有算法基础或者说算法没学好的小伙伴用来入门。示例丰富,图文并茂,以让人容易理解的方式阐释了算法.读起来比较快,内容不枯燥!
「啊哈!算法 (豆瓣评分 7.7,0.5K+人评价)」
和《算法图解》类似的算法趣味入门书籍。
「我的第一本算法书 (豆瓣评分 7.1,0.2K+人评价)」
一本不那么“专业”的算法书籍。和前两本推荐的算法书籍都是比较通俗易懂,“不那么深入”的算法书籍。
经典
「《算法 第四版》(豆瓣评分 9.3,0.4K+人评价)」
Java 语言描述,算法领域经典的参考书,全面介绍了关于算法和数据结构的必备知识,并特别针对排序、搜索、图处理和字符串处理进行了论述。书的内容非常多,可以说是 Java 程序员的必备书籍之一了。
下面这些书籍都是经典中的经典,但是阅读起来难度也比较大,不做太多阐述,神书就完事了!推荐先看 《算法》,然后再选下面的书籍进行进一步阅读。不需要都看,找一本好好看或者找某本书的某一个章节知识点好好看。
「编程珠玑(豆瓣评分 9.1,2K+人评价)」
经典名著,被无数读者强烈推荐的书籍,几乎是顶级程序员必看的书籍之一了。这本书的作者也非常厉害,Java之父 James Gosling 就是他的学生。
很多人都说这本书不是教你具体的算法,而是教你一种编程的思考方式。这种思考方式不仅仅在编程领域适用,在其他同样适用。
「《算法设计手册》(豆瓣评分9.1 , 45人评价)」
被 Teach Yourself Computer Science 强烈推荐的一本算法书籍。
「《算法导论》 (豆瓣评分 9.2,0.4K+人评价)」
「《计算机程序设计艺术(第1卷)》(豆瓣评分 9.4,0.4K+人评价)」
面试
「《剑指Offer》(豆瓣评分 8.3,0.7K+人评价)」
这本面试宝典上面涵盖了很多经典的算法面试题,如果你要准备大厂面试的话一定不要错过这本书。
《剑指Offer》 对应的算法编程题部分的开源项目解析:CodingInterviews
「程序员代码面试指南:IT名企算法与数据结构题目最优解(第2版) (豆瓣评分 8.7,0.2K+人评价)」
题目相比于《剑指 offer》 来说要难很多,题目涵盖面相比于《剑指 offer》也更加全面。全书一共有将近300道真实出现过的经典代码面试题。
「编程之美(豆瓣评分 8.4,3K+人评价)」
这本书收集了约60道算法和程序设计题目,这些题目大部分在近年的笔试、面试中出现过,或者是被微软员工热烈讨论过。作者试图从书中各种有趣的问题出发,引导读者发现问题,分析问题,解决问题,寻找更优的解法。