当前在线教育里,资源最多的可能就是计算机专业的课程了。这虽然给我们提供了极大的方便,可以去分享名校的教育资源。但另一方面,浩如烟海的资源,有的时候反而会使我们迷惘。所以,在本篇文章我将从自己的切身体验出发,给大家推荐一些自己觉得极好的课程资源和书籍。读者可以作为参考。

清华大学 邓俊辉 《数据结构》

**推荐理由:** 邓俊辉老师的《数据结构》在清华大学也十分受欢迎,还入选了 **[清华大学首批七门标杆课程](https://www.zhihu.com/question/306632594)**。在课程内容安排上,老师不仅介绍了数据结构与算法的基础知识,还引入了摊还分析等高级的分析方法。相对于其他的《数据结构》,这门课程的深度和广度都是很到位的。另一方面,这门课程还要配套的OJ,其中的题目也是相对有难度的。我最喜欢这门课程的一点是,相对充分的分析过程。有的《数据结构》课程往往就是介绍一种数据结构的实现与之相关的算法(增删查改),没有对数据结构的分析就不能建立良好的联系。学到的知识,也会是散的,会觉得这些数据结构是不明所以。

当然,这门课程是不太适合完全零基础入门的(其实也不一定,看自己愿意花多少精力)。可以看稍微简单的书籍了解什么是数据结构,之后就建议马上入坑~

台湾大学 林轩田 《机器学习基石》 & 《机器学习技法》

**推荐理由:** 相对于吴恩达的系列课程,这两门课程更强调理论推导。学完吴恩达的课程,其实很多时候对于基本原理依旧会不明所以。林轩田教授的两门课程实际上是一整门课程的两个部分,林教授会带着我们从可学习性出发,然后将神经网络、SVM、logistic等等机器学习中常用的算法。配合林教授合著的《Learning From Data》或者周志华教授所写的《机器学习》食用,可以使得我们对机器学习的理解更加深入。

CS61A

这门课程是经典书籍《SICP》的Python版课程,每堂课都会有作业。使用Python和scheme其实都不重要,正如《SICP》所说,教材使用scheme也无非是看重它的语法简单。这门课程会涉及到高阶函数、数据抽象、宏、流等诸多概念,是有广度和深度的。

本篇文章将持续保持更新。