从当初被算法吊打,到现在能用算法解决一些实际的工程问题。分享一下自己的整理的一些书籍和学习资源。
我的每篇回答都很用心,如果觉得内容不错的话,点个赞就是对我最大的鼓励。欢迎关注这个宝藏博主。
开始书籍推荐之前先说一下我觉得算法这部分学习比较好的规划:
「未入门(对算法和基本数据结构不了解)之前建议先找一本入门书籍看」 。比如 「《我的第一本算法书》」 这本书作为入门书籍就很不错!「比较经典的算法类书籍比如《编程珠玑》,虽然非常经典,但是我觉得是非必看的。反正我自己是硬着头皮看了 1/3 就看不下去了。」「如果要准备面试,时间比较紧的话,推荐把中心放在专门为算法面试准备的书籍比如《剑指 offer》和《程序员代码面试指南》上。另外,除了这两本书籍的话,我在下面推荐了 Leetcode 和牛客网这两个常用的刷题网站以及一些比较好的题目资源。」书籍推荐
先来看三本入门书籍,这三本入门书籍中的任何一本拿来作为入门学习都非常好。我个人比较倾向于 「《我的第一本算法书》」 这本书籍,虽然它相比于其他两本书集它的豆瓣评分略低一点。我觉得它的配图以及讲解是这三本书中最优秀,唯一比较明显的问题就是没有代码示例。但是,我觉得这不影响它是一本好的算法书籍。因为本身下面这三本入门书籍的目的就不是通过代码来让你的算法有多厉害,只是作为一本很好的入门书籍让你进入算法学习的大门。
入门
「我的第一本算法书 (豆瓣评分 7.1,0.2K+人评价)」
一本不那么“专业”的算法书籍。和下面两本推荐的算法书籍都是比较通俗易懂,“不那么深入”的算法书籍。我个人非常推荐,配图和讲解都非常不错!
「《算法图解》(豆瓣评分 8.4,1.5K+人评价)」
入门类型的书籍,读起来比较浅显易懂,非常适合没有算法基础或者说算法没学好的小伙伴用来入门。示例丰富,图文并茂,以让人容易理解的方式阐释了算法.读起来比较快,内容不枯燥!
「啊哈!算法 (豆瓣评分 7.7,0.5K+人评价)」
和《算法图解》类似的算法趣味入门书籍。
经典
「《算法 第四版》(豆瓣评分 9.3,0.4K+人评价)」
我在大二的时候被我们的一个老师强烈安利过!自己也在当时购买了一本放在宿舍,到离开大学的时候自己大概看了一半多一点。因为内容实在太多了!另外,这本书还提供了详细的 Java 代码,非常适合学习 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 道算法和程序设计题目,这些题目大部分在近年的笔试、面试中出现过,或者是被微软员工热烈讨论过。作者试图从书中各种有趣的问题出发,引导读者发现问题,分析问题,解决问题,寻找更优的解法。
网站推荐
我比较推荐大家可以刷一下 Leetcode ,我自己平时没事也会刷一下,我觉得刷 Leetcode 不仅是为了能让你更从容地面对面试中的手撕算法问题,更可以提高你的编程思维能力、解决问题的能力以及你对某门编程语言 API 的熟练度。当然牛客网也有一些算法题,我下面也整理了一些。
LeetCode
发表评论