MashPlant的笔记

“你将孤单度过一生”

0%

大一下总结

大三下期末考完了,来写写。怀念以前有微积分的日子,那时的我真是太认真了。

面向对象程序设计基础(A)

这是这学期唯一一个编程课,我当时还算是很享受编程的(到现在时间长了,也许编程仍然能给我带来快乐,但是疲劳肯定是越来越多了),所以算是上的很认真。

我选的是yhl的课,选之前听说很有特色,比如是英文的ppt+大部分英文的讲课之类的。其实到了他自己讲不清楚的时候他自然会用中文的,感觉就很滑稽,不过对我们听课也没什么影响。

平时的作业基本就是一些编程题目,有一个互评的环节,把自己的作业发给别人,别人填一张评价表,然后自己根据评价来改。开始前几次还是有点意思的,不过次数多了就感觉是走过场,有点无聊了。

这门课有一个课后报告的环节,就是一个学期中轮流每个人准备一次报告在课上讲,主题没有什么限制,就是分享一下自己的了解的知识。我那一场时间很早,当时好像还在学构造函数什么的,但是我准备的主题是模板元编程,这就很突兀了。当时我花了一个周末准备,写了一点代码,比如一个编译期的Treap之类的。虽然在台上讲的时候装的好像一副举重若轻的样子,像是在炫耀自己的成果一样,但是其实我心里也知道这完全就是屠龙之技,真没什么用的,看别人讲比如编译工具链之类的,我感觉比我的还更有意义一些。

有两个大作业,分别是个人的和组队的。个人的我选了写一个带语音输入的文本编辑器,用的是讯飞的语音输入API,用Qt做GUI。在做的时候感觉在Windows上写代码实在是太难受了,几乎完全没有可能成功编译网上的代码,VS这一套工具链实在是不知道怎么用,而且本来很多网上的代码就是只能在Linux上跑的。再加上这个Surface只有128G的硬盘,Windows下空间快不够用了,等等许多原因,我换成Linux了。但是直到现在,我对Linux的使用水平也只限于把它当做一个写代码更方便的Windows。

组队的大作业,因为不想组队,我就申请自己做了。我很不喜欢组队,到现在也是这样的,能不组就尽量不组。大部分情况下,只有一门课强制要求,或者我对这门课不感兴趣,我才会主动去组队。我选的是实现姚期智的一篇关于欧式空间中的MST的计算的论文,只要求实现二维的情形。在经过了很多优化之后,这个算法的速度确实还可以,其他常见的算MST的各种方法都比不过,但是比用Delaunay三角剖分做的还是慢太多了。当然这个我并不会写,我是抄n+e的。最后我的代码里全是模板套模板,一个虚函数也没有,现在我的代码风格还是这样的,几乎从来不会主动用virtual或者Rust的dyn trait

考试是机试做题,听说别的OOP班都是笔试,这可太幸福了。题有点多,有很少的一点点算法(最长上升子序列级别的),主要还是考察OOP的知识。我是顺利做完了,不过还是有不少人没做完,或者因为不知道概念和语法而做不出来一道题。

微积分A(2)(A+)

我还是选了晏平的微积分,上学期就觉得听的很舒服。

晏平的作业是真的多,反正是比我的舍友上的微积分作业多多了,但是我当时一直把这当做很好的复习巩固的机会,要是让现在的我去选,那肯定是不会选晏平了,当然也不可能达到这样的分数了。不仅作业多,答案也有很多错漏,当时多亏了有fzt做的答案勘误。我觉得做完之后对一遍答案,然后自己尝试改一下错题,这个收获非常大。而且如果实在不会的话确实是需要答案帮助一下的,自己已经有了充分的思考,再继续耗下去确实是浪费时间了,看答案也不会削弱练习的效果。

这门课上习题课的助教是所有数学课的助教里我现在还能想起来的唯一一个了,因为他非常有特色吧,感觉像是国防生之类的,很高很瘦,穿着一双胶鞋。我们每次都在习题课上交作业和拿作业,这门课每次发下来批改后的作业之后允许我们下周改正再交过来,这样不算扣分,我很喜欢这个政策。

我记得有一次习题课前我生病了,下午为了缓解难受准备睡一会,但是醒来习题课已经开始了,舍友也没有叫我。我在床上躺着想了一会,还是要去,因为习题课上要交作业,我怕迟交会扣分。到了教室交完作业之后只能趴在桌子上,感觉教室的光线特别刺眼,眼睛完全不敢睁开,要用手臂重重地压住眼睛才会舒服一点。现在回想起来感觉和我之后顶着病和寒风去上大物和考软工非常像,不知道这样的坚持是有什么意义,明明不去才是最优的选择。

尽管作业很多,但是这学期课外用来学微积分的时间还是比大一上少多了,因为几乎只有做作业的时间了。那本数学分析我偶尔会看,考前看的还是很多,感觉这个复习效果还是相当好的。

期中99,期末100。期中其实算比较简单,因为班上有好几个100,其实我也不知道到底是哪里扣了一分。期末就相当难了,我自己做的时候感觉计算量是非常大的,让我找到了高中考试的感觉了,确切地说是第一次八校联考的最后一道填空题,算一个几何体的表面积还是体积来着,一遍算不对算两遍,两遍算不对算三遍,算到算对为止。证明题就没什么技术含量了,多看看数学分析会发现微积分的证明题一眼就看透了。我还记得晏平在监考的时候逛到我这边来,看到我做完了,问了一句你做完了?我说是的,但是我还在检查。

线性代数(2)(A)

选的是姚国武的线代。线代2说实话真的很简单,就是一些算法,没什么证明技巧的要求,而且老师也不会故意刁难出一些很难算的数字,最后都是那种你算出来就知道自己做对了的题目。

不过姚国武还是有他自己的风格的。虽然最后考试确实很简单,但是作业里还是可以尽量往难了出。之前也提到了,实在不会做我就上网搜了,基本上都是能够搜到的,因为一般都是一些高等代数的习题里面的。

期中期末都是满分,不过没有得A+,估计也是因为满分的人不少吧。

离散数学(2)(A-)

选的是cy的课,挺后悔没选另一个老师,因为后来听说另一个老师口碑还可以。

他上课主要的时间是在纯念ppt,很催眠的那种念。还有一小部分时间用来鼓励我们要去创新,听得我相当恶心,假如我们这一群人里真的有人能做出什么创新(当然也确实有,可惜不会是我),那也绝对不会因为是听了他这种质量的课,或者是受到了他的启发。

其实上课部分倒还好,后来就会知道这大概就是计算机系老师的及格水平了,他的其他操作才是更恶心的。也许相当一部分人会喜欢吧,我不知道,但是这是我自己的总结,我想说什么就说什么,我就是觉得恶心。例如要学生做什么技术报告之类的,通过这些报告我什么也没有学到,但是我感受到了很大的压力,好像别人已经融会贯通,站在高处俯瞰了,我还纠缠在这些图论的题目中,因为图论对我来说真的很难。还有期末考试让学生出题,这要是放在高年级的专业课上,人都能给他喷没了,这就是直接鼓励恶性竞争。某些人把自己在别的课上做的题目出出来,自己当然是会做,和他水平差不多的人多半也会,我就想破头也不可能做出来了。哦,那怎么不让我来出微积分的题目啊,我就不信这群计算机系的人还能人均精通数学分析了。

结合其他课一看,感觉我这个人心理有点问题,我卷可以,别人卷就不行,我就感觉很难受,压力很大。这人怎么这么贱啊。

还有这课的时间也不好,是在上完两节微积分后面连上三节。本来人就很累了,上到后面还很饿,根本听不进去。

A-是我的数学课的最低分(如果离散数学算数学课的话),仅有一个数值分析与之并列(如果数值分析也算数学课的话)。

形式语言与自动机(A-)

这节课应该是经常被推荐给大一下的学生提前选的,因为没有什么前置要求,对图论其实没有什么要求,总不能只要有张图就说前置要求图论吧。

课的主要内容就是正则<->DFA<->NFA,CFG<->PDA,图灵机这一套,相关的算法比较多,大部分还都是很合理,不难记的,不过越到后面关于可判定性的结论越多,这就只能死记硬背了。我记得前几周上CFG的时候有几个CFG的构造的题目是真的做不出来,感觉就是纯考智力,这我就不擅长了,后面考记忆的东西慢慢变多了,我就掌握的更好了。

很多人可能觉得这些算法,没什么用,包括编译原理的很多算法,但是我写lalr1re2dfa的时候其实都用到了,比如正则转NFA,NFA转DFA,DFA最小化,还有龙书上介绍的一个快速生成LALR(1)转移表的算法(编译课上没讲)。事实证明这些算法的效率都是相当高的,尽管看起来有很多迭代之类的东西。

期中考试是开卷的,但是其实题量很大,而且需要记的东西不多,开卷没有什么意义。期末考试是闭卷的,反而它更应该开卷。期末我记得考了一个构造PDA,考场上自以为做出来了,其实做的是错的,出来听别人一说,答案是真的精妙,我绝对想不到这么做,错的不冤。期末有一个附加题,证明一个图灵机相关的理论什么的,我也是自以为证出来了,不过看结果应该是没有。

我期中期末都是接近90的样子,得个A-应该算是调分力度非常弱了吧,可能他们的算法对于分数比较高的人就是调的很少。

大学物理B(1)(B+)

我们的老师周树云好像是那一年新来的,感觉讲课软绵绵的,语调也没什么变化,听不出来强调的地方。听说她后来还上了朗读者,应该是科研成果比较突出吧,不过上课水平确实也就一般。

期中考试感觉有点难度,但是做的还可以。她还给我们班排了个名,我是排第五,当时自我感觉很不错。

后来学到相对论的时候感觉听不太懂,上了一次习题课之后感觉好了一些。

期末主要是热学,公式很多但是不是很难,我留了很多时间来复习,我自己也感觉复习的有点随意,但是我相信我还是都记牢了的,没想到翻车了。考试是下午两点半,我当时准备上床休息一会,但是闹钟没有响,或者是我没听到。我醒来时大概两点二十多了,同样是这门考试的舍友已经走了,没有叫我。我当时就骑车飞奔到考场,幸运的是到的时候他们还在发卷子。做的时候就感觉心里很浮躁,但是题目看着都很简单,比期中简单多了,我也不知道我能错在哪里,最后结果就是只有B+。

学术英语读写(3)-文献综述(B)/读写(4)-研究论文(B+)

我到底是为什么想不开要选两门英语课啊。这两门课是这个学期主要的压力来源。

文献综述其实还好,老师老一些,要求也都比较佛系,但是因为我没有太多时间可以花在它上面,所以小测和考试基本都是没有准备的。如果把它放到别的学期,成绩应该会好一些。

研究论文是补选上的,上第一次课的时候退课就已经截止了,否则我肯定会把它退了。这门课上课是讲课本上的论文,每节课小测考单词。作业有两个阅读笔记,就是总结课本上的论文。不过主要任务还是一个组队项目,自选主题写一篇论文。也不是简单的写,还有很多额外的环节。论文分成两个部分,一部分是摘要和文献综述那些,一部分是方法和结果那些,四个人的组要再分成两组,每组中各自写第一部分,相互评改,然后大组里交流修改一下,第二部分也是一样。实际情况是很多时候我都不知道其他人在干什么,他们也没有问我在干什么。反正就是非常复杂混乱,我都没办法完全回忆起来具体做了什么,我能确定的是最后每个人应该要有独立属于自己的一篇论文,小组只是调查和讨论的单位。写完后每个人还要自己找别的组的一个人相互评改,最后还有一个pre。反正就是每个环节都能多出一些任务来。

很多个晚上我都用来写这个论文,绞尽脑汁要想一个不同于之前的表述,增加语言的多样性。我是真的不理解为什么一个研究论文要有语言的多样性,难道不是一直用同一个词读起来更舒服吗?还有,我后面上这个课经常会问自己,我没上的第一节课到底错过了多少东西,为什么会有那么多我没听说过的名词?还是说她假定我们都会,或者假定我们都能找到解释?

我没有说这门课不好,但是确实很不适合我这种不愿意在英语课上付出太多时间的人。

中国近现代史纲要(A-)

选了李蕉的课,听说这个老师很受欢迎,看人数确实如此,而且上到后面人也确实没怎么变少,这还是很不容易的。当然这种课我从来不会认真听,所以她讲的好不好我也不知道。

整个学期基本上只有一个项目要做,就是组队读一本书,有各种围绕它的讨论,展示,读书笔记等等。我们组选的是《历史三调》,这个其实我早就全忘了,书名还是在网络学堂里找出来的。每次讨论,尽管我为了不那么尴尬肯定还是会提前做一点准备,不过结果往往还是很尴尬,对同一个问题别人可以说的相当充实,结合书中的内容具体分析,我就只能随便讲一些假大空的东西。最后的展示主要是队长在carry,其他队员也有贡献,反正我是完全没有参与。

这样居然都能得个A-,进个好队也太重要了吧。

大数据与机器智能(B+)

这好像是一个文素,当时应该也是因为文素而选它的。这门课就是教炼丹,很基础的那种,选课的时候我还不知道这不是我感兴趣的方向,不过上着上着我就确定了。有几次作业,都是用TensorFlow训练神经网络。我当时很期待自己能学会RNN到底是什么原理,可惜到现在我也还是不懂,不过现在已经不期待了。

大作业是组队的,这应该算既强制要求,我也不感兴趣的课。和两个舍友组队了,结果代码还是几乎都是我写的,每次都是这样我怎么可能喜欢组队啊。我们做的是一个下棋的AI的框架,目标是比较简单的那几种棋都能下,因为神经网络和MCTS本来也对棋的规则不感兴趣,所以只要不是太难的应该都能下好。初始的代码是从Github上找的,我魔改了很多,最后效果算一般吧,下个四子棋能和我这种只知道规则的人五五开(在我心中这已经可以算一般了,不是很差了)。

科学技术史系列讲座(B+)

应该是文核吧,如果我没记错的话。课还算有点意思,就是每次请一个老师来讲一段科学史,有签到。工作量应该算相当小,没有展示,只要最后写一个小论文,和回答一些题目就可以了,这工作量小的我都怀疑它不是文核。

体育(2)(C-)

老师是杜超,跟上学期一样,这个应该是巧合,不是我选的。这学期体育是教清华拳,我记忆中不算难。这学期要测引体向上,这其实才是体育的主题。很遗憾,到最后我也一个都没有做起来。

一开始我肯定是一个都做不起来,我有一点想练的欲望,但是因为我真的没什么力气,在那里练习看起来实在是很滑稽,反正我自己是这么想的。这种心理上的障碍本来都是自己给自己的,如果我不在乎的话,哪怕别人真的觉得我很滑稽又怎么样呢,还不是一样可以练。但是很不幸,我确实很在乎,这个也没法改,天生在性格里面的。还有一个原因是我完全感觉不到自己有任何的进步,练习跑步我可以坚持,因为确实在变快,体重也有在降低,这个不给我一点反馈,我是真的没有动力坚持下去。

测试之前我是真的怕她把我给挂了,不过看起来杜超人还是很好的,没有太为难我。

复变函数引论(W)

这学期选的是杨晓京的复变,之前已经说过了,我觉得姚国武的复变更适合我,当然这个时候的我肯定不知道。

杨晓京名气很大,给分非常友好,题目都是原题,而且还可以做一些题目来代替考试,怎么看都应该是他更好一些。但是就是有一个问题,他讲课讲的不行,从我的角度来看,他没有讲清楚。作业选的都是一些书上的题目,感觉练习量也不够,那些他没讲清楚的东西做完作业也还是不清楚。

中间尝试了一下做他布置的题目,有一个关于zeta函数的,这个我记得我高中有段时间就对这很感兴趣,虽然理论基础完全没有,但是Fourier级数的公式还是记得住,自己算了几个zeta(2),zeta(4)什么的,当时感觉自己好厉害。他布置的题目具体是什么已经不记得了,只记得也可以用Fourier级数来辅助证明,但是还有很多其他问题,当时我自己找了很多资料才证出来。后来有天上课他说:我看有人(不是我)交上来的证明是用Fourier级数,你们不应该会Fourier级数,所以这个证明肯定不是你自己写的,这题的证明里不允许用Fourier级数。我直接???

期中的时候感觉课太多,没办法都学好,再加上这些烦心事,就退了。

实验室科研探究(P)

全忘记了,没什么可说的。