Skip to content

清华大学计算机系课程攻略 Guidance for courses in Department of Computer Science and Technology, Tsinghua University

License

Notifications You must be signed in to change notification settings

zhuxinjin/THU-CST-Cracker

Repository files navigation

清华大学计算机系课程攻略

浙江大学相关项目启发,创立了本项目。

由于本仓库未启用git-lfs,因此请不要上传单个超过100M的文件,否则commit无效。

如果想下载部分文件夹,可使用 https://minhaskamal.github.io/DownGit/#/home

感谢对本项目贡献的同学(排名按照commit先后顺序):Trinkle23897(翁家翌,2016)、LJSthu(刘家硕,2016)、shyoshyo(雷凯翔,2014)、wuhaozhe(吴昊哲,2015)、choumartin1234(周恩贤,2018)、FztTony(傅舟涛,2017)、VicaYang(杨维铠,2015)、duzx16(杜政晓,2016)、zerotrac(陈书新,2015)、沈天成(2014)、gjz010(郭敬哲,2016)……以及电脑前的您!

前言

来到一所大学,从第一次接触许多课,直到一门一门完成,这个过程中我们时常收集起许多资料和情报。

有些是前人细心雕琢出的大作业,放在个人的GitHub仓库中,可是由于影响力不够而渐渐被遗忘;有些是历年试卷或者 A4 纸,前人精心收集制作,抱着能对他人有用的想法公开,却需要在各个群或者私下中摸索以至于从学长手中代代相传;有些是上完一门课才恍然领悟的技巧,原来这门课重点如此,当初本可以更轻松地完成得更好……

我也曾很努力地收集各种课程资料,但到最后,某些重要信息的得到却往往依然是纯属偶然。这种状态时常令我感到后怕与不安。我也曾在课程结束后终于有了些许方法与总结,但这些想法无处诉说,最终只能把花费时间与精力才换来的经验耗散在了漫漫的遗忘之中。

我为这一年一年,这么多人孤军奋战的重复劳动感到不平。

我希望能够将这些隐晦的、不确定的、口口相传的资料和经验,变为公开的、易于获取的和大家能够共同完善、积累的共享资料。

我希望只要是前人走过的弯路,后人就不必再走。这是我的信念,也是我建立这个项目的原因。

特性

本项目至今为止收录了以下内容:

  • 课程攻略:readme.md
  • 电子版课件和参考教材:ebook/[教学年份]/[老师姓名].pdf (由于可能存在的版权问题,暂未加入)
  • 平时作业答案与大作业资料:hw/[学生年级_学生姓名]/
  • 历年试卷和复习资料:exam/
  • 开卷考试 A4 纸:a4paper/

等等。目前具体已涵盖课程如下:(课程分类按照实际情况而不是按照培养方案)

  • 大一上:
必修 任选
微积分A(1) 计算机科学导论
线性代数(1) 工程图学基础
程序设计基础
离散数学(1)
思想道德修养与法律基础
信息科学技术概论
  • 大一下:
必修 物理必修
微积分A(2) 大学物理B(1)
线性代数(2) 大学物理英
离散数学(2)
中国近现代史纲要
面向对象程序设计基础
  • 大一小学期:程序设计训练
  • 大二上:
必修 物理必修
数据结构 大学物理B(2)
复变函数引论 大学物理英
电子学基础 物理实验B(1)
电子学基础实验
马克思主义基本原理
  • 大二下:
必修 数学必修 专业限选
人工智能导论 概率论数理统计 计算机图形学基础
形式语言与自动机 随机数学方法 初等数论
数字逻辑电路
数字逻辑实验
物理实验B(2)
  • 大二小学期:Java台湾小学期、Java程序设计与训练、汇编语言程序设计
  • 大三上:
必修 专业限选
计算机组成原理 人工神经网络
计算机网络原理 计算机网络安全技术
编译原理 人机交互理论与技术
信号处理原理 VLSI设计导论
软件工程 数据库系统概论
  • 大三下:
必修 专业限选
操作系统 机器学习概论
计算机系统结构 数字图像处理
数值分析 模式识别
数学实验 数据挖掘
多媒体技术
现代密码学
搜索引擎技术基础
存储技术基础
数据库专题训练
计算机网络专题训练
系统分析与控制
  • 大三小学期:并行计算机体系结构与编程、保研考试
  • 大四上:网络安全工程与实践、嵌入式系统、现代控制技术
  • 研究生课:组合数学

电脑前的您请不要吝啬,您的作品一旦被合并至该仓库中,有可能会被无数学弟仰慕。我们需要您的PR!

平台

为什么采用 GitHub 项目作为平台呢?出于以下一些考虑:

微信群大多为年级和专业所分隔,无法长期共同地保有,况且群文件也缺乏组织。

GitHub 项目可以使用目录进行文件组织,并且每个目录均可以在显示文件列表的同时显示一个 readme,十分适合本项目的需求。

GitHub 带有便捷的 Issue 和 Pull Request 协作功能,并且可以方便地对贡献的质量进行监督和调整。

贡献

欢迎贡献!

欢迎贡献!

欢迎贡献!

——因为很重要所以说了三遍

Issue、PR、纠错、资料、选课/考试攻略,完全欢迎!来自大家的关注、维护和贡献,才是让这个攻略继续存在的动力~

对于教师的评价可写在对应课程的readme.md中。如果想上传课件(请确保无版权问题),推荐使用pdf格式,避免系统差。

由于本项目体积很大(约3G),故可以采用在Github Web端直接上传的方式,具体操作如下:

  1. 首先Fork本项目,点击右上角的Fork按键即可。

2.1. 上传文件到已有文件夹:打开对应文件夹,点击绿色Download按钮旁的upload,上传你的文件。

2.2. 上传文件到新文件夹:打开任意文件夹,点击绿色Download按钮旁的upload,把浏览器地址栏中文件夹名称改为你想要新建的文件夹名称,然后回车,上传你的文件。

3.1 提交 PR:上传完文件到个人仓库之后,点击 Pull Request 即可。请留意一下项目的文件组织。

3.2 也可以直接附加在 Issue 中,由维护者进行添加。

比如我是2018年上网络原理的n+e,想在网络原理上传一个自己的作业,即在网络原理文件夹下新建文件夹2018_n+e,然后往里面填东西即可(当然,欢迎往对应的readme.md里面放自己的GitHub对应仓库链接~)

许可

由贡献者编写部分的许可如下:

(Creative Commons BY-SA 4.0) 知识共享署名 - 相同方式共享 4.0 国际许可协议

The Star And Thank Author License

其他部分的版权归属于其各自的作者。资料仅供参考,请自己判断其适用性。

About

清华大学计算机系课程攻略 Guidance for courses in Department of Computer Science and Technology, Tsinghua University

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 43.4%
  • HTML 24.6%
  • Assembly 9.8%
  • C 6.8%
  • Verilog 6.1%
  • Java 2.3%
  • Other 7.0%