CS Requirements and Resources
有感于国内令人发指的CS教育,决定以自学为主。
路线会按照计算机科学与技术的技能树,主要学习四大的比较完整的课程,video没时间看,但reading会仔细看、lab会认真做,对于一些比较有意义、代码量还可以的lab会在博客上记录。
一、 基础知识
- 语言:熟悉1~2门语言(Java/C++/Python…)
Harvard CS50-Introduction to Computer Science // Doing
Stanford CS106A-Programming Methodology // Skip
UC Berkeley CS61A-Structure and Interpretation of Computer Programs // Skip - 系统:熟悉Linux系统,最好能了解下源码;
- 数学基础:概率与统计、线性代数、离散数学、微积分、组合数学……
MIT 6.042J-Mathematics for Computer Science课程视频 // TODO
MIT 18.06-Linear Algebra // TODO
MIT 6.012-Introduction to Probability // TODO
all of statistics // 看情况
组合数学 - 专业课程:数据结构、操作系统、计算机网络、数据库、编译原理、组成原理……
UC Berkeley CS61B-Data Structures视频大作业思路 // TODO 18spring代码测试平台开放
Stanford CS106B-Programming Abstractions // Skip
UC Berkeley CS61C-Great Ideas in Computer Architecture(Machine Structures) // TODO
CMU 15-213-Computer Systems: A Programmer's Perspective作业视频 // TODO
MIT 6.033-Computer System Engineering // 看情况
CMU 15-445/645-Intro to Database Systems视频 // TODO
CMU 15-441/641-Computer Networks // TODO
MIT 6.828-Operating System Engineering学习材料 // TODO
RICE COMP412-Compiler Construction // Skip
Stanford CS143-Compilers视频 // TODO - ……
二、 编码能力
- 常规算法:链表、栈和队列、二叉树、图、动态规划、查找、排序……(复杂度最优,白板练习、Bug-Free);
杭电OJ
北大OJ
浙大OJ
Codeforces
Leetcode
PTA
洛谷 - 设计题
- ……
三、 工程能力
- 实习项目:
- 学校大作业:
- 兴趣项目:
- 开源项目:
- ……
四、 特定领域
这些高级课到时候可以对应烟酒生的课挑着上。
- 机器学习:
MIT 6.034-Artificial Intelligence - 计算机图形学:
CMU 15-462/662-Computer Graphics // 选修 - 系统:
- 安全:
高级算法:
MIT 6.046J
Stanford CS261
计算理论:
CMU 15-251
分布式系统:
CMU 15-440
体系结构:
CMU 18-447
Stanford
并行:
CMU 15-418
安全lab
密码学:
MIT
接上视频
人工智能:
UCB CS188
CV:
CS231n
NLP:
CS224n
大数据:
S
函数式编程:
cmu
其余的可以关注mooc - ……
五、 软素质
- 沟通交流
- 比赛获奖、成绩
- ……
六、其它
闲暇之余可以看看一些博客,不过碎片化知识我还是觉得作用很小。
千千
阮一峰
王垠
BYVoid
Matrix67
刘未鹏
Miloyip
陈硕
赵劼
CS Requirements and Resources的更多相关文章
- Xamarin.Android之MvvmCross
欢迎大家加入以下开源社区 Xamarin-Cn:https://github.com/Xamarin-Cn Mvvmcross-Cn:https://github.com/Mvvmcross-Cn ...
- ef6 dbfirst 实现同一套代码多个数据库访问
codefirst可以通过DbConfiguration实现,但是dbfitst无法做到,弄了一天,搞定了,下面是步骤 1.将.edmx的 元数据处理项目改成 复制输出到目录 2.bs项目添加App_ ...
- CV code references
转:http://www.sigvc.org/bbs/thread-72-1-1.html 一.特征提取Feature Extraction: SIFT [1] [Demo program][SI ...
- Kubernetes相关概念
This page explains how Kubernetes objects are represented in the Kubernetes API, and how you can exp ...
- 2、一、Introduction(入门):1、Application Fundamentals(应用程序基础)
一.Introduction(入门) 1.Application Fundamentals(应用程序基础) Android apps are written in the Java programmi ...
- CV codes代码分类整理合集 《转》
from:http://www.sigvc.org/bbs/thread-72-1-1.html 一.特征提取Feature Extraction: SIFT [1] [Demo program] ...
- vs项目结构解析
当我们用VS开发一个项目的时候,首先应该清楚用VS这个IDE生成的一些文件和文件夹是什么意思,起什么作用,什么场合下使用. 因为我使用的是VS2015,就以这个为例来进行一些说明: 首先要做的是更改你 ...
- 将 WPF、UWP 以及其他各种类型的旧 csproj 迁移成基于 Microsoft.NET.Sdk 的新 csproj
原文 将 WPF.UWP 以及其他各种类型的旧 csproj 迁移成基于 Microsoft.NET.Sdk 的新 csproj 写过 .NET Standard 类库或者 .NET Core 程序的 ...
- UWP 设置控件样式四种方法
1.隐式方法,通过仅指定 Style 的 TargetType.(设置全部的Button样式) <Page.Resources > <Style TargetType="B ...
随机推荐
- Android | 教你如何开发扫二维码功能
前言 最近要做一个停车场扫码收费的app,在网上搜了一圈,首先接触到了ZXing,上手试了下,集成过程不复杂,但是感觉效果欠佳,比如距离稍微远点儿就扫不出来了,另外角度对的不好,反光或者光线比较暗 ...
- 如何在Vue中优雅的使用防抖节流
1. 什么是防抖节流 防抖:防止重复点击触发事件 首先啥是抖? 抖就是一哆嗦!原本点一下,现在点了3下!不知道老铁脑子是不是很有画面感!哈哈哈哈哈哈 典型应用就是防止用户多次重复点击请求数据. 代码实 ...
- 微信小程序H5预览页面框架
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- Hadoop安装教程_分布式
Hadoop的分布式安装 hadoop安装伪分布式以后就可以进行启动和停止操作了. 首先需要格式化HDFS分布式文件系统.hadoop namenode -format 然后就可以启动了.start- ...
- Flutter 实现网易云音乐字幕
老孟导读:没有接触过音乐字幕方面知识的话,会对字幕的实现比较迷茫,什么时候转到下一句?看了这篇文章,你就会明白字幕so easy. 先来一张效果图: 字幕格式 目前市面上有很多种字幕格式,比如srt, ...
- ThinkPHP3.2.3发送微信模板消息
一.开通模板消息功能 所有服务号都可以在功能->添加功能插件处看到申请模板消息功能的入口,但只有认证后的服务号才可以申请模板消息的使用权限并获得该权限:需要选择公众账号服务所处的2个行业,每月可 ...
- Python openpyxl使用操作和openpyxl操作
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取htt ...
- 如何将你的 Vue.js 项目部署在云开发静态托管之上
云开发静态托管是云开发提供的静态网站托管的能力,静态资源(HTML.CSS.JavaScript.字体等)的分发由腾讯云对象存储 COS 和拥有多个边缘网点的腾讯云 CDN 提供支持. 在云开发静态托 ...
- python进入adb shell交互模式
import subprocess #方法一:进入某个环境执行语句(adb shell),注意shell内部命令需要带\n,执行完后一定记得执行exit命令退出,否则会阻塞 obj = subproc ...
- coding++:@DisallowConcurrentExecution 注解的作用
Quartz定时任务默认都是并发执行的,不会等待上一次任务执行完毕,只要间隔时间到就会执行, 如果定时任执行太长,会长时间占用资源,导致其它任务堵塞. 在Spring中这时需要设置concurrent ...