/ZJUCourse

Notes of my ZJU courses

Primary LanguageJupyter Notebook

ZJUCourse

浙江大学20级计算机科学与技术(图灵班)在读,分享一下本科期间记的笔记。

因为每学期课程较多,我在大二之后记的笔记部分是在学长学姐优秀笔记的基础上补充,我会在后面注明参考来源,如有侵权实在抱歉,请告知我立即删除。原创性较低的笔记不做分享直接贴上我使用的优秀笔记的链接,向这些同学表示深深的感谢!

我在大二之后的笔记大部分都能提供Markdown源文件及其中的图片,Markdown原文件中的图片地址都是采用相对路径,方便大家基于我的笔记基础上补充修改。部分只能提供PDF版本,我尽量将其中图片转成相对路径。

个人评价是我对个人笔记的自评,简单分成三个等级(很多学长学姐优秀笔记远超本人的评级上限),分别是:

​ :star:记录不全面、格式不美观、有一定原创性;

​ :star::star:记录较全面、格式较美观、有一定原创性;

​ :star::star::star:记录全面、格式美观、有较高原创性。

恳请大家批评指正!

目录

大一上

课程名称 老师名称 建设情况 参考来源 个人评价
电工电子工程训练 熊素铭 实验报告 - ⭐⭐

电工电子工程训练

当年机械系学长带飞,课很无聊。

大一下

课程名称 老师名称 建设情况 参考来源 个人评价
离散数学理论基础 郑文庭 Notes - ⭐⭐
普通物理学Ⅰ(H) 潘正权 Notes - ⭐⭐

离散数学理论基础

笔记较全。本课学的知识不难,但是考试极难。

普通物理学Ⅰ(H)

笔记分类较好,但是内容比较简略。

大二上

课程名称 老师名称 建设情况 参考来源 个人评价
数据结构基础 何钦铭 暂弃 - -
人工智能基础 黄正行 Lab - ⭐⭐
图像信息处理 宋明黎 Notes+Lab - ⭐⭐
普通物理学Ⅱ(H) 王业伍 Notes - ⭐⭐
面向信息技术的沟通技巧 翁恺 Notes - ⭐⭐
程序设计与算法基础 翁恺 Notes - ⭐⭐
计算机逻辑设计基础 王总辉 Notes - ⭐⭐
课程综合实践Ⅰ(超算) 陈建海 暂弃 - -

数据结构基础

没有记笔记。对于考试来说,刷题比较重要。DS Lab暂时不开源。

人工智能基础

笔记主要是PPT,参考性不大,我认为书比较重要。AI基础Lab暂时开源。

图像信息处理

笔记也主要是PPT,另外放了一份自己填的期末考点,期末考主要还是背多分。DIP Lab暂时开源。

普通物理学Ⅱ(H)

笔记记得还算全,但是考试一塌糊涂。

面向信息技术的沟通技巧

本课内容不多,比较简单。

程序设计与算法基础

由于是大一下转入图灵,没有上大一上的程算课,这个学期看完了网课,笔记还算全。翁恺的程算讲的着实不错,适合C语言入门。

计算机逻辑设计基础

笔记也还算全,但考试不行。王老师的讲课方式让我听不懂硬件课,后来姜女士上计组和体系我都学的很明白。

课程综合实践Ⅰ(超算)

超算让我学到了非常非常多的东西,我衷心推荐这门课,当时超算Lab做了一个暑假,非常尽兴。超算 Lab暂时不开源。

大二下

课程名称 老师名称 建设情况 参考来源 个人评价
高级数据结构与算法分析 毛宇尘 Notes Zhang-Each ⭐⭐
数据库系统 孙建伶 - 推荐:Zhang-Each -
**古代玉器 陈晶鑫 Notes - ⭐⭐⭐
计算机组成与设计 姜晓红 Notes - ⭐⭐⭐
面向对象程序设计 翁恺 大作业 推荐:Zhang-Each -

高级数据结构与算法分析

感谢 Zhang-Each !!感谢毛老师!!本笔记在 Zhang-Each 基础上加上毛老师的手写笔记内容。毛老师的ADS非常非常非常推荐!

暂时不开源ADS Lab。

数据库系统

Zhang-Each 学长的笔记救命。数据库第一年教改,MiniSQL是基于CMU15-445 Lab完成,暂时不开源。

**古代玉器

(可能是GitHub上本课唯一的笔记)

笔记比较全。

计算机组成与设计

姜女士的课,上课体验很好,当场画单周期和流水线CPU非常便于理解。笔记记的也比较全。计组Lab暂时不开源。

面向对象程序设计

继续靠 Zhang-Each 学长救命。本学期大作业是写一个MUD,我拙劣的项目地址:KingRank,可能有点特色的是JSON的读取和保存,总体很一般。

大三上

课程名称 老师名称 建设情况 参考来源 个人评价
计算机体系结构 姜晓红 Notes+Cheating Sheet - ⭐⭐⭐
计算机视觉 潘纲 Notes+期末复习 - ⭐⭐
程序设计方法学 翁恺 暂弃 - -
计算机网络 高艺 Notes+自顶而下Notes+Lab6 - ⭐⭐⭐
操作系统原理与实践 申文博 Notes zju-icicles
Java应用技术 鲁伟明 Notes+大作业 Zhang-Each ⭐⭐
优化基本理论与方法 钱辉 预习中 ⚠️ - -
理论计算机科学导引 金小刚 预习中 ⚠️ - -

计算机体系结构

我认为姜女士的体系结构讲得很好很清楚,她的课程内容和第五版(bhys第六版没看)有一些不同(第二章Cache优化更加系统化,第三章介绍书上没有的Scoreboard及其renaming)。

我的笔记是完全原创,主要存在的问题是没有记录Scoreboard的例子,复习时可以参考PPT看其中的例子,其他都比较详细。

另外附上自己使用的Cheating Sheet,PDF有6页,是为了看得清楚放大拍的,前三页是A4正面,后三页是A4背面。

暂时不开源体系 Lab。

计算机视觉

我的笔记相对完整,但是主要是PPT截取,本课最关键的还是做实验和背诵期末考点。

最后复习课上有一份PPT Review2022.pdf 中罗列了每个章节的考点问题,我个人做了个半成品回答草案在 期末.md 中,另外和同学整理了一份较完整的回答出来 期末Review.pdf

暂时不开源CV Lab。

程序设计方法学

本学期PPL大改革,感觉本课更加偏向数学和逻辑,上课体验不算好,因此学期初记了部分笔记后来弃了,主要还是看书学习。助教精心准备的实验和最后出的题目非常nice,感觉在做Lab和期末题的时候才能把上课和书上抽象的概念弄懂。

指路ZJU-PPL:Zhejiang University Principles of Programming Languages Course (github.com)

助教提供了非常好的Lab,其他注释详细可以直接尝试做,而且在GitHub上有自动测评机,推荐喜欢PL的同学学习!

暂时不开源PPL Lab和期末作业。

计算机网络

计网教改班,PPT是统一的中文教案,实验是CS144(很难)+ Socket通信编程,考试遇到很多LKJ100和王道原题。

CS144网上参考众多,这里略过。Socket通信Lab开源。建议考试多刷LKJ100和王道。

我的笔记比较完整,另外也提供了很完整的自顶而下的笔记,但是感觉考试用不太上。

操作系统原理与实践

本人笔记基于 zju-icicles 中的 notebook,但发现其内容和申老师讲课内容存在较多不同,且其内容排版不太美观。我补充了申老师上课的内容,主要是添加在每个小标题的最前面,但是效果不算太好。

图灵班的OS的实验要求稍微高一些,但是也并没有多很多。暂时不开源OS Lab(PS:有同学在学期中开源Lab,导致被抄袭而扣分,请大家引以为戒)

考试使用的CheatingSheet我是在 HJH A4 的基础上略做修改,主要是参考申老师的期末复习课,因为是纸上修改,这里不提供电子版。

Java应用技术

Java的笔记基于 Zhang-Each,非常感谢学长!!!我参考翁恺和鲁伟明的讲课对学长的笔记进行了补充。

Java大作业是做一个Swing+Socket+多线程+JDBC的应用,我由于时间问题,最后没有加上数据库部分。我实现了一个简易版的炉石,其中使用maven构建项目,项目使用MVC架构。项目链接:Hearthstone-Swing