想在求职前把CS core的内容系统学习一遍,也算是程序员基本功的练习。把计划和进展发在这里,督促自己,同时也分享给大家参考。
根据ACM和IEEE联合发布的最新 Computer Science Curricula 2013 和 当下的发展潮流,我把自己定义的CS core的内容分为了以下5个科目:
- DSA (Data Structure & Algorithms)算法与数据结构
- CN (Computer Network)计算机网络
- OS (Operating System)操作系统
- AR (Computer Architecture)计算机系统结构
- AI (Artificial Intelligence)人工智能
粗略的计划是:每个科目,先按照MOOC -> 书 -> 练功房的顺序拾起,然后在练功房中遇到问题时再回过头来查阅书、MOOC、论文等。
下面是各个科目具体的计划和进展
1. DSA (Data Structure & Algorithms)算法与数据结构
(1)MOOCs
清华大学-邓俊辉老师的数据结构(上、下两部分),已学完一遍,包括PA。
http://www.xuetangx.com/courses/course-v1:TsinghuaX+30240184+sp
http://www.xuetangx.com/courses/course-v1:TsinghuaX+30240184_2X+sp
普林斯顿大学的算法(part I, II两部分),part I 已学完(PA还差一道kd-tree),part II 正在学
https://www.coursera.org/learn/algorithms-part1
https://www.coursera.org/learn/algorithms-part2
(2)books
《数据结构-第三版》邓俊辉,清华大学
《数据结构习题解析》邓俊辉,清华大学 (与MOOC配套)
《Algorithms (4th edition)》算法(第四版) 普林斯顿大学 (与MOOC配套)
《具体数学》Knuth
(3)练功房
之前在ACM校队训练过一段时间,有一些积累。现在看来那时学的东西不够系统,是针对比赛去学的,比较零散而讨巧。不过也发现了各种OJ的优势与劣势。以后打算在这三个OJ上练习。
https://leetcode.com/ 不用多说,程序员求职利器呀~
https://hihocoder.com/ 北大维护,每周一道hiho一下,还是能把一个问题研究得比较透的。不定期有校招在线比赛。
https://www.nowcoder.com/ 因为topcoder的一次活动而知道的这个网站,转为程序员求职而设计,各种题库、课程、经验等等很全面。
2. CN (Computer Network)计算机网络
(1)MOOCs
https://www.coursera.org/learn/computer-networking Google出品
(2)books
《Computer Networking A Top-Down Approach (6th edition)》计算机网络:自顶向下方法(第六版)
3. OS (Operating System)操作系统
(1)MOOCS
(2)books
《Operating System Concepts (9th edition)》操作系统概念(第九版)(也就是恐龙书)
4. AR (Computer Architecture)计算机系统结构
(待补充)
5. AI (Artificial Intelligence)人工智能
(1)MOOCS
https://www.coursera.org/learn/machine-learning/ Stanford - Andrew Ng 已学完一遍,包括PA
http://www.xuetangx.com/courses/course-v1:TsinghuaX+80240372X+sp 清华大学深圳研究生院 已学完一遍。
https://www.coursera.org/learn/neural-networks-deep-learning Deep Learning 专项课程1 deeplearning.ai - Andrew Ng,已学完一遍,包括PA
https://www.coursera.org/learn/deep-neural-network/ Deep Learning 专项课程2 deeplearning.ai - Andrew Ng,已学完一遍,包括PA
https://www.coursera.org/learn/nlp-sequence-models Deep Learning 专项课程5 deeplearning.ai - Andrew Ng,正在学习,包括PA
(2)books
《机器学习》周志华。粗略翻了一遍
《统计机器学习》李航。粗略翻了一遍
《深度学习》Ian Goodfello等,正在读
(3)练功房
https://www.kaggle.com
https://tianchi.aliyun.com 阿里云天池大赛