(帮高中同学代PO)
零、前言
当初决定跨考时参考了不少版上的心得文,着实受益良多,因此决定考上后也要发一篇,
希望能对没钱补习而且有时间修课的跨考生有所帮助。
一、背景
114理学院系排倒数的大五拉基,GPA好几个学期只有一开头,大三下修了电机系的程设后
,觉得写程式很有趣,因此决定跨考资工所。由于大三结束时还有将近五十学分的学分还
没修,所以决定大四就先认真修课,大五上再全心准备考试。
二、成绩
数学 软件 硬件 (加权)总分 结果
台大资工 65 77.5 61 208.5(英文50) 正取
台大电机丙 47 66 75 193.8(英文58) 落榜
清大资工 X 78 81.6 159.6 正取
交大资工 55 79.5 61 212.6(资甲) 正取
中央资工 58 49 54 161 备3X
网页好读版:https://imgur.com/vFbx5RP.jpg
三、时程安排
大四一整年:
把资料结构、算法、计算机组织、计算机程式设计二都修过。
大四结束后的七月到八月:
由于没有修过离散跟线代,所以暑假主要就是看开放式课程,看MIT OCW的前半段抓个感
觉,再来把交大庄重老师的线代OCW看完,然后从Friedberg的书中挑几题看的顺眼的习题
来写,每个章节大概四五题这样。离散的部份则是看清大韩永楷老师的OCW(离散数学的
前半段跟高等离散结构generating function的部份),然后写写他的习题。不想读书的
时候就写写LeetCode复习算法这样。
九月到十月:
读了两个月的数学有点腻,这阶段主要都在复习算法,把CLRS拿出来啃,大概读到16章
Greedy Algorithm那边,读的方式大概就是读完课本的介绍然后把习题尽量写过一遍,尽
量花时间自己想出来然后用文字表达。OS的部份刚好正在修所以就跟着课堂的进度走,还
有看周志远的开放式课程。
十一月初到十一月中旬 :
这段时间就是把之前修计组时老师录的课程影片拿出来两倍速看完,复习计组时刚好OS也
教到memory的部份,我自己觉得这两科一起念是有相辅相成的效果,会对计算机架构有更
深刻的了解。
十一月中旬到十二月底:
这时候已经开始有点紧张感了,卯起来啃CLRS,把图论算法的部份都唸过,由于时间有
点紧迫,习题只有写之前修课时老师圈的。这时候开始复习资结,也是看CLRS,搞清楚复
杂度的证明还有多练习几次各种进阶树操作就差不多了。OS的部份就把周志远的开放式课
程再看一次这样。
一月:
这段时间就是把近十年台清交资工所的考古题刷完,然后检讨,心情不好就臭骂高中同学
出气。
四、各科心得
线性代数:
这科我念的非常烂,虽然有把OCW看完,但几乎没什么写题目,后期写考古题才发现自己
观念超级不清楚,只能疯狂的骚扰战友。我觉得数学最好还是要修课,至少能强迫自己做
习题。要真正把课本后面的习题、证明走过才能确定自己是不是真的懂了。
离散数学:
除了暑假看开放试课程外,有零碎时间的时候会把台大陈建辉离散数学里的题目拿出来算
一算,还有黄子嘉的上册,但自己并不是非常喜欢他的排版到最后也只有唸了一点点。我
念数学的方式就是典型的负面教材,只有把OCW看一看就以为自己会了,到最后数学都考
得不是很理想,数学真的要多写习题维持手感==
资料结构:
如果之前有修过课的话,把基本的资料结构刻过之后,再唸过CLRS就足够应付大部分的题
目了,AVL的部份就是自己google,到考前走路很无聊的时候都会自己在脑中把那些
Advanced Tree操作过一遍,不然真的很容易忘记。因为时间不太够,Advanced Tree只有
看课本上的,fibonacci heap就没看,只有稍微记一下复杂度,所以电机丙资结就被狠狠
D教训了。
算法:
圣经本真的很神,我自己是把必考的章节都读过,但我然后尽量多写习题,CLRS的习题我
个人认为都非常值得做,每一题都十分经典,习题才是这本书的主体阿。然后114大学部
推荐去修BF的算法,真的教超好。
计算机组织:
计组因为有修过课,修课的时候有看过RISC-V版的课本了,所以复习方式就是看老师以前
录的影片,因为修课的时候只有教到第五章,所以我就没看第六章平行的部份了,写考古
遇到第六章的时候就只能Google,把维基当作课本看,大概有个概念就好这样,准备的策
略就是确保第四章跟第五章的分数都尽量拿到就好。
另外暑假的时候比较悠闲,自己有把Computer Systems: A Programmer's Perspective的
一到三章看过然后写对应课程的lab,个人认为非常有趣,也可以学到很多东西
http://csapp.cs.cmu.edu/3e/labs.html
Data lab:我自己觉得做完会对数值系统蛮熟悉的
Bomb lab:要自己trace x86组语figure out该输入的string,做完就会对组合语言非常
熟悉了
Attack lab:code injection实做,齁胜
Cache lab:写个cache simulator还有cache blocking
其实这些lab写完就会对电脑底层大概有个感觉,蛮推荐的。
然后计组我觉得修课会很有帮助,因为后面的作业通常会叫你用Verilog写一个pipeline
的CPU,那个写完后datapath什么的就会很熟了。
作业系统:
这科的准备我就是修课再加上看了周志远的OCW两次(真的教超好),恐龙书我真的看不下
去,所以我认为自己不是念的很扎实,主要是写交大计系的考古题抓出自己观念不清楚的
地方还有google。
考古题:
建议先从交大的考古题开始写,有正确解答,一开始写分数都超低,会检讨得很崩溃,但
写到后面常考的东西大概就都摸熟了,会越写越顺,比较能感觉的到自己在进步,就比较
不会那么慌。
五、心得
总而言之,事后来看觉得自己在准备上蛮缺乏规划的,一不小心就严重偏食了,有好长一
段时间几乎不怎么碰数学,真的是差点出事,规划好自己的时间很重要阿,一定要尽可能
的每天碰到所有科目,如果是非常不自律的人,我非常建议去修课,至少会有小考作业去
push你的进度,就比较不会偷懒。
然后读书时间上我自己是除了上课、重训、校队练球以外的时间就待在图书馆,7月到12
月大概每天五到六个小时,最后一个月开始调作息写考古,因为考试都是早上八点开始考
==,从总图开馆读到闭馆,大概一天八小时吧,闭馆回宿舍之后就用力耍废看剧,大推
Silicon Valley跟派遣女医陪伴我度过烦闷的考研时光。我觉得该休息就要休息,之前尝
试过好几次回宿舍后继续硬读,结果隔天直接大摆烂,所以认清自己一天能负荷的读书量
是很重要的,过度训练bad。
我文笔很烂,能看到这的各位我真心佩服,祝福各位考试顺利。
赠书:
考上来还愿,去年买的还非常新,希望能帮助有需要的考生
离散数学(上)黄子嘉
离散数学习题详解 黄子嘉
线性代数分类题库 黄子嘉
(直接站内PO文帐号即可,可店到店、清交面交)