废话不多说,直接上干货。

高质量文章收藏

(1.8w字)负重前行,前端工程师如何系统练习数据结构和算法?【上】

算法与面试之-如何准备算法面试

我接触过的前端数据结构与算法 - 掘金

前端该如何准备数据结构和算法? - 掘金

如何系统地学习算法?

算法与数据结构文章详细分类与整理!

算法到底应该怎么学?

程序员应该如何学习算法?

【算法与数据结构】+一点点ACM从入门到进阶吐血整理推荐书单(珍藏版)

有哪些学习算法的网站推荐?

结构之法 算法之道(博客专注面试、算法、机器学习)

oRbIt 的专栏(CSDN著名算法博主)

十大经典排序算法

LeetCode按照怎样的顺序来刷题比较好?

LeetCode 算法题目解答汇总

LeetCode算法题目动画解析

LeetCode刷题笔记

算法学习公众号

1、五分钟学算法

关注公众号回复 1024 送你 50 本 算法编程书籍,GitHub 4.6w Star,全球排名 51。以动画的形式呈现算法的思路,致力于把算法讲清楚!

2、九章算法

专业的北美IT求职经验分享、技术交流社区,帮助你找到好的IT工作。由硅谷顶尖的IT企业工程师授课,提供专业的算法培训/面试咨询。

3、视学算法

关注公众号,回复“学习”获取程序员资料

4、程序媛不是程序猿

关注公众号,回复“算法”,获取算法学习资料

5、算法与数学之美

多篇原创文章,非常好的学习算法和数据结构的公众号


算法练习网站

1、LeetCode

估计 leetcode(力扣)大家都很熟悉了,都被推荐烂了,很多国内外的程序员在上面刷题,难度从 Easy、Medium 至 Hard 都有,据说很多面试官都会从中挑选各种题目,号称大厂的筛码工。

2、LintCode

国外算法练习网站

3、Educative

国外算法练习网站

4、牛客网

牛客网作为国内内容超级丰富的 IT 题库,各种东西看的我眼花缭乱,题库+面试+学习+求职+讨论 360 度无死角服务,堪称"互联网求职神器"。它好就好在不只是一个刷题的平台,还是一个交流学习的平台。

5、hihoCoder

网站的技术团队来自于原北大 POJ 的开发团队,至于 POJ 会在后面的篇章中介绍,反正膜拜就完事了。一些知名的大厂比如微软、百度、腾讯、网易等会在上面举办在线编程比赛,风格倒是和 ACM 比赛类似。

6、HDU

杭电(杭州电子科技大学)的 OJ 大概是国内最火的几个 OJ 之一了,现在上面大概有接近 6k 的题量,网上有很多的刷题顺序,刷题指南。

7、POJ

作为国内最火的几大 OJ 之一,现在上面有 3k+ 的题量,关于 POJ 的刷题指南网上更是很多。

网络视频课程

1、300分钟搞定数据结构与算法

LeetCode 官方国内唯一合作课程,leetCode刷题秘籍独家揭秘,专注于面试场景,全程动态动画教学。

2、数据结构精讲:从原理到实战

Google资深工程师带你玩转数据结构,搞懂数据结构底层原理,打败 97% 的程序员

3、机器学习入门21讲

中科院博士带你轻松入门AI。

4、麻省理工学院公开课:算法导论

课程主题包含了:排序、搜寻树、堆积及散列;各个击破法、动态规划、偿还分析、图论算法、最短路径、网络流、计算几何、数字理论性算法;多项式及矩阵的运算;高速缓存技术及并行运算。

5、中国大学MOOC-数据结构

国内关于数据结构非常经典的课程。

必备书单

1、啊哈!算法(豆瓣评分7.7)

史上最全算法学习资料整理_第1张图片

这是一本充满智慧和趣味的算法入门书。没有枯燥的描述,没有难懂的公式,一切以实际应用为出发点,通过幽默的语言配以可爱的插图来讲解算法。你更像是在阅读一个个轻松的小故事或是在玩一把趣味解谜游戏,在轻松愉悦中便掌握算法精髓,感受算法之美。

2、算法图解(豆瓣评分8.4)

史上最全算法学习资料整理_第2张图片

图文并茂,以让人容易理解的方式阐释了算法,旨在帮助程序员在日常项目中更好地发挥算法的能量。书中的前三章将帮助你打下基础,带你学习二分查找、大O表示法、两种基本的数据结构以及递归等。余下的篇幅将主要介绍应用广泛的算法,具体内容包括:面对具体问题时的解决技巧,比如,何时采用贪婪算法或动态规划;散列表的应用;图算法;K最近邻算法。

3、大话数据结构(豆瓣评分7.9)

史上最全算法学习资料整理_第3张图片

《大话设计模式》作者程杰潜心三年推出的扛鼎之作!以一个计算机教师教学为场景,讲解数据结构和相关算法的知识。通篇以一种趣味方式来叙述,大量引用了各种各样的生活知识来类比,并充分运用图形语言来体现抽象内容,对数据结构所涉及到的一些经典算法做到逐行分析、多算法比较。与市场上的同类数据结构图书相比,本书内容趣味易读,算法讲解细致深刻,是一本非常适合自学的读物。

4、算法帝国(豆瓣评分7.2)

史上最全算法学习资料整理_第4张图片

本书是《纽约时报》畅销书作者的又一力作,通过一个又一个引人入胜的故事,向读者介绍了算法掌控世界的真实情况,揭示了“机器人革命”是如何悄悄地在我们身边发生的。本书适合任何对科技史、信息革命、算法原理、数据分析感兴趣的读者。

5、算法之美(豆瓣评分7.5)

史上最全算法学习资料整理_第5张图片

这本书告诉我们如何更有效地利用直觉、什么时候应该把选择权交给命运、无所适从的时候应该如何做出选择,以及如何有效地与他人保持联系。从找配偶到找停车位,从组织管理个人邮箱的收件箱到理解人类记忆的作用原理,这本书把计算机科学的智慧转化为人类生活的策略,引导我们做出明智的选择。

6、编程珠玑(豆瓣评分9.1)

史上最全算法学习资料整理_第6张图片

本书是计算机科学方面的经典名著。书的内容围绕程序设计人员面对的一系列实际问题展开。作者Jon Bentley 以其独有的洞察力和创造力,引导读者理解这些问题并学会解决方法,而这些正是程序员实际编程生涯中至关重要的。本书的特色是通过一些精心设计的有趣而又颇具指导意义的程序,对实用程序设计技巧及基本设计原则进行了透彻而睿智的描述,为复杂的编程问题提供了清晰而完备的解决思路。本书对各个层次的程序员都具有很高的阅读价值。

7、算法谜题(豆瓣评分7.5)

史上最全算法学习资料整理_第7张图片

本书可以为对算法感兴趣的广大读者提供系统丰富而实用的资料,能够帮助读者提升高阶算法思维能力。本书适合计算机专业的高校教师和学生,想要培养和训练算法思维和计算思维的IT专业人士,以及在准备面试的应聘者和面试官阅读参考。

8、算法设计与分析基础(豆瓣评分8.7)

史上最全算法学习资料整理_第8张图片

本书十分适合用作算法设计和分析的基础教材,也适合任何有兴趣探究算法奥秘的读者使用,只要读者具备数据结构和离散数学的知识即可。

9、数据结构与算法分析(豆瓣评分8.5)

史上最全算法学习资料整理_第9张图片

本书是国外数据结构与算法分析方面的经典教材,使用卓越的Java编程语言作为实现工具讨论了数据结构(组织大量数据的方法)和算法分析(对算法运行时间的估计)。 随着计算机速度的不断增加和功能的日益强大,人们对有效编程和算法分析的要求也不断增长。本书把算法分析与最有效率的Java程序的开发有机地结合起来,深入分析每种算法,内容全面、缜密严格,并细致讲解精心构造程序的方法。

10、算法详解(卷1)——算法基础(豆瓣评分8.8)

史上最全算法学习资料整理_第10张图片

本书为对算法感兴趣的广大读者提供了丰富而实用的资料,能够帮助读者提升算法思维能力。本书适合计算机专业的高校教师和学生,想要培养和训练算法思维和计算思维的IT专业人士,以及在准备面试的应聘者和面试官阅读参考。

11、算法导论(原书第3版)(豆瓣评分9.2)

史上最全算法学习资料整理_第11张图片

本书将严谨性和全面性融为一体,深入讨论各类算法,并着力使这些算法的设计和分析能为各个层次的读者接受。

12、计算机程序设计艺术(豆瓣评分9.8)

史上最全算法学习资料整理_第12张图片

本书首先介绍编程的基本概念和技术,然后详细讲解信息结构方面的内容,包括信息在计算机内部的表示方法、数据元素之间的结构关系,以及有效的信息处理方法。此外,书中还描述了编程在模拟、数值方法、符号计算、软件与系统设计等方面的初级应用。此第3版增加了数十项简单但重要的算法和技术,并根据当前研究发展趋势在数学预备知识方面做了大量修改。

13、算法第 4 版(豆瓣评分9.3)

史上最全算法学习资料整理_第13张图片

《算法(英文版•第4版)》作为算法领域经典的参考书,全面介绍了关于算法和数据结构的必备知识,并特别针对排序、搜索、图处理和字符串处理进行了论述。第4版具体给出了每位程序员应知应会的50个算法,提供了实际代码,而且这些Java代码实现采用了模块化的编程风格,读者可以方便地加以改造。本书配套网站提供了本书内容的摘要及更多的代码实现、测试数据、练习、教学课件等资源。

14、算法引论(豆瓣评分9.1)

史上最全算法学习资料整理_第14张图片

本书是国际算法大师乌迪·曼博(Udi Manber)博士撰写的一本享有盛誉的著作。本书的特色有二,旨在提高读者的问题求解能力,使读者能够理解算法设计的过程和思想:一是强调算法设计的创造性过程,注重算法设计背后的创造性思想,而不拘泥于某个具体算法的详细讨论;二是将算法设计类比于定理归纳证明,揭示了算法设计的基本思想和本质。

15、剑指offer(豆瓣评分8.3)

史上最全算法学习资料整理_第15张图片

本书剖析了50个典型的程序员面试题,从基础知识、代码质量、解题思路、优化效率和综合能力五个方面系统整理了影响面试的5个要点。是面试必读书籍之一。

16、编程之美(豆瓣评分8.4)

史上最全算法学习资料整理_第16张图片

这本书收集了约60道算法和程序设计题目,这些题目大部分在近年的笔试、面试中出现过,或者是被微软员工热烈讨论过。作者试图从书中各种有趣的问题出发,引导读者发现问题,分析问题,解决问题,寻找更优的解法。