開始寫這篇博客的時候是在從浙大返校的路上。一路過來真不容易。旁人眼中對保研可能只是豔羨,彷彿就只要坐等offer似的,雖然我在此以前也確實沒想過會跟打戰通常的度過這幾個月。linux
先大體說明下我的條件。福州大學計算機實驗班,排名專業第2(九月初印的成績單),拿過一次國獎和數次校級一二等獎學金,兩次校級三好學生,建模國二,美賽H獎,服務外包國二,還有一些零零碎碎的小獎。拿到保研資格應該是沒太大問題。c++
3月份開始意識到差很少要準備保研的事情,加了兩三個學長姐問了下須要開始準備什麼東西,大多數都是說能夠開始整理簡歷和聯繫導師那些,去年保上浙大的學長說他4月份就開始聯繫導師了,遲了可能會沒有名額,但也有告訴我如今太早聯繫等到暑假夏令營那會老師都已經忘記了。面試
那時候不太懂沒名額是什麼意思,難道在複試以前就能先發offer嗎,後來我是五月份中旬開始給各校導師發郵件的。基本都收到回覆了,但大多都是相似於「歡迎報考我校推免生」的官回,復旦的老師回覆說夏令營碩士名額少能夠投直博OTL(直博確實廣泛會比直碩更容易些)。算法
如今回想起來我感受那時候發郵件其實確實太早,若是不是有十足的把握好比本科C9成績很好確定有條件能入營,或者能獲得本校實驗室合做關係的老師推薦什麼的,徹底能夠等拿到入營資格再發。由於至少以個人條件,對方老師並不會這時候就能答應給你留出名額來等你進複試。數組
夏令營的報名從6月份先後就陸續開始了,在此以前我整理了大學期間得到的全部獎狀(電子版掃描件)、競賽/項目經歷,思考整理本身拿得出手的全部資本,還包括白底和藍底的電子版一寸照、從各個學長姐請教面經的聊天記錄整理成篇、以及導師推薦信模板等。我投了的夏令營有清華、科大、華科、北航、復旦、華理。除了清華投的是軟件,其餘都是計科。海投其實挺累人的,由於各個學校的申請表、填報系統、須要的資料都不一樣,即便是大部分我的信息都早有準備的狀況下,填完這些七七八八的東西仍要花上很多時間,並且還要跑學院樓蓋各類章,請各類老師籤推薦信什麼的。特別想吐槽復旦那個報名系統,是我見過的全部高校中最麻煩的,就彷彿有種不是爲了收集信息,而是爲了考驗對復旦的期待值是否是足以撐到填完這個系統。原本還想投同濟,但那會剛好在參加清華夏令營結果沒注意就錯過了申請時間。微信
清軟的複試時間特別早,是在6月初,這時候其餘大部分學校甚至都尚未發夏令營公告。夏令營的形式是實驗室講座+機試+面試。第一天上午聽了一早上的介紹,中午就在會議室吃盒飯orz 中午12:30開始機試,機試4道題,時間好像是3個半小時,不是oj,就是給了一份寫着題目的紙質試卷,難度中等偏容易。我其實刷的題很少,那段時間也就天天一兩道LeetCode以及打打週日的比賽,結果在一道題看錯題目的狀況下竟然仍然拿了前十orz,題解在這裏。網絡
機試無疑給了我很大的信心,本來覺得來這裏大概只能看着神仙打架,沒有想到機考結束出來交流了一下發現很多人都沒能全作出來,甚至有些本科是沒有經歷過這種機考的... 我猜測多是投的軟院而不是計科的緣由,各校的軟院考覈都廣泛比計科容易些,這也是爲何清華我只敢投軟院orz。次日是學院面試和實驗室面試,面試前我纔想起可能須要把簡歷帶上每一個老師發一份,臨時跑去打印了5份簡歷,結果發現現場有近10位老師簡歷不夠發orz(因此面試前必定要印上十幾份的簡歷,多餘的本身放在面前,回答簡歷問題的時候還有個參照會更有把握一點)。學院面試問的專業基礎問題很少,以及問了你以爲昨天機試狀況怎樣,而後也有問了簡歷(由於寫着面向對象助教因而被問道大家本科生就能作助教了嗎orz)。口語題是用英文說說你作過的項目吧,我這時候徹底沒有經驗,根本沒有準備項目介紹,若是用中文還有可能當場梳理描述,英文就別提了。因而老師改口說,那用英文說說你來清華的這兩天吧。我就磕磕巴巴的說了兩三分鐘,以爲本身說的挺爛的,組織成句能力太差了... 而後實驗室面就比較輕鬆,自我介紹了一圈後問了下興趣愛好什麼的,而後就散了,各自找導師私聊。私聊的時候我才知道這個夏令營原來是直博夏令營,老師說這時候無法肯定給offer,若是想申碩因此得九月份推免複試經過了才能發offer。雖然網站上的公告各校都是隻寫着「優秀大學生夏令營」,沒想到清軟是直博夏令營。結果仍是吃了信息不充分的虧。數據結構
雖然沒有拿offer,可是好歹體驗了一下夏令營是怎麼一回事。痛定思痛,知道本身欠缺的地方還有很是多,而後就一邊完善本身的材料一邊等其餘學校的夏令營通知。科大是最先出的,沒進。而後復旦、北航,都沒進。本想着華理打底的結果尷尬的也沒進。那段時間屢屢被拒真的很是很差受,壓力很大,懷疑人生,甚至想要否則去投廈大吧,極不情願地填完了網上報名表以後才發現還須要寄送紙質材料,那時候就快截止確定來不及了。最後就只進了華科夏令營。框架
華科是得知入營後纔開始聯繫導師。我找的是分佈式方向的老師,聯繫的第一位老師用英文回覆郵件讓我發一份中英CV給他。我徹底沒有寫過英文版本的簡歷,連忙求助了一位好友以爲他可能會有相關資料,而後在獲得的模板上寫了一下午,次日回覆過去以後就再也沒有收到回信orzz 但正是由於這件事我有了一份條理清楚中英完備的簡歷,後來的全部簡歷我都是用的這一份。等了兩天無果後聯繫了另外一位老師,郵件回覆讓我發下成績單,而後就加了qq,問了我可計算性理論學了些什麼、分別解釋下P, NP, NP-complete, NP-hard。問我對區塊鏈有沒有了解,而後發了一份區塊鏈相關的論文給我,讓我夏令營能夠去找他。分佈式
夏令營那會武漢是真的熱,室外溫度40,在戶外半天就能一身汗。機試那天早上剛踏進門被一個老師攔下來,我一臉迷茫的看他,內心想難不成是要先簽到,結果他掏掏掏遞我一包紙巾!我簡直差點要笑出來,趕忙道謝接過來擦汗,到這種地步orz(華科印象分++)。
華科的夏令營只有機試,也是人工判分不是oj。題目偏簡單,幾乎不須要用到數構和算法知識,一題判素數一題字符串處理,可是對於作慣了oj的來講挺怪的,試卷上是兩個大題,每題下面3道小題,數據範圍也沒給。現場問了下數據範圍,但回答也比較模糊就說是整型數,滿頭問號,那反正就閉着眼睛瞎打。而後就純憑機試成績拿優營。優營結果次日早上出,那時候我正去導師實驗室的路上,看到進了優營以後就更有底氣去面導師了。進辦公室以後稍微聊了下,那位老師對我成績單上寫着「數學與計算機科學學院」挺感興趣的,他說組內須要數學好的人,福大的離散中心很好,大家又是數學和計算機一塊兒的學院,因此對我簡歷很感興趣。我內心想老師你可能有所誤解,但也沒敢多說什麼orz 私聊結束後老師讓我跟他一塊兒去隔壁棟參加組會。組會是在討論讀區塊鏈那篇論文的進展,氣氛至關好,盡情發言,老師也徹底沒有架子。哇,我才知道組會原來能夠是這樣的,好向往。後來組會結束老師送了我一段,邊走邊聊,基本算是發了口頭offer。(結果就由於參加了一早上的組會忘記去拿優營證書!!orz)
到此夏令營就結束了。回來以後的一個月暑假我就留在家裏鹹魚,天天睡覺看書偶爾打題。很是推薦去看機械工業出版社的那本《計算機科學導論》來做爲保研面試專業基礎課的複習。由於不是考研,不須要每門都複習到精通,重要的是本科上過的課程中重點內容不能忘記。而這本書基本上把三年的知識串了一遍,看到書裏略寫但記得上專業課的時候比較重要的東西再去翻課本或者查搜索引擎,我大概天天看個一章花了20天左右看完,能把框架知識撿起來大半。
九月份開學的時候就差很少開始投推免複試申請了。此次有華科打底,因而只投了清華、浙大、復旦、同濟,也再次聯繫導師發了自薦郵件。
先是接到了復旦老師的回覆,問我明天什麼時間段有空能電話聯繫。雖然我其實一成天都有空,但什麼都沒準備就直接電面怕是會狗帶,因而回復了下午和晚上的時間段。而後次日花了一整個上午詳細的把簡歷裏提到的每個項目都過了一遍,理順了可以充分回答「這個項目是作了什麼」的任務目標、作法、相關算法等。而後下午在圖書館的一個安靜的角落抱着電腦打開簡歷等電話,結果後來仍是晚上回宿舍後接到了- -||| 因而拿着簡歷、紙和筆,跑到走廊邊上有燈的拐角接。電面基本上把簡歷上幾乎每條都問了一遍,問項目問得很是細,具體到解釋一下用到的算法,你以爲最出彩的是哪一個項目、獨特的地方在哪裏。我說完了以後老師說,你看過相關領域的論文嗎,這個早就有成型的作法了(體驗極差好嗎!!)而後問了看過哪些課外書,自學能力怎麼樣,感興趣的方向是什麼,而後介紹了本身實驗室的狀況,全是本校的學生,ACM區域賽金牌啥的一堆,最後一年都不用去實習還在實驗室幹活由於有工做來找他們,對本身的標準要定高一些,有同窗來問畢業標準是什麼,那是給最低要求的學生用的,個人學生都是每人一篇頂會,總之嚇得我一愣一愣的。由於原本今年是收滿了的結果被一個忽然出國放了鴿子,因此反覆確認我還參加了哪些、有什麼offer、肯定會不會來。本着實誠的態度我把還投了清華而且有華科offer的信息供了出去,而後明顯的感覺到對方老師有點不悅,最後我篤定的說若是復旦給學碩確定會去。(其實我後來才感受到供出offer這差很少是面試的大忌了,無論對哪一個學校都至少應該說雖然報了其餘學校但但願很小啦確定會去之類的orzz)
復旦的申請截止日和清軟同樣,但清華審覈速度超快,沒兩天的就能在系統上看到結果了。推免也同樣和夏令營要過去參加複試,但和夏令營不一樣的是不報銷旅途費用也再也不包吃住了,並且還要交一張毛爺爺的複試費。並且很是不巧的是清華的時間和本校推免資格面試撞了,我前一天才剛剛定好的機票,次日就收到學院面試通知,面試開始時間和機考時間徹底重合,根本沒有錯開的可能,簡直是晴天霹靂。那時候正在圖書館,一看到就跑出去給輔導員給導師打電話求助,能不能協調本校面試讓我去複試,一邊聯繫清華,看看有沒有可以單獨機考的可能。固然清華給的回覆確定是不可能爲一我的單獨出卷,要我和本校協商好。輔導員這邊又勸我資格面試是根本,沒拿到推免資格根本就無法保研。那個時候真的有哭出來的衝動,內心想本身運氣怎麼會差到這種地步。心情很是複雜,心裏中其實有一絲逃避隻身赴京的輕鬆,這樣放棄也就算了吧,但又怎麼都不甘心,即便但願渺茫,也不想就這樣連嘗試的機會都沒有就失去了。抱着必定要爭取複試的心情打了一成天的電話,聯繫各類老師。最後在諸多老師的幫助和協調下,包括學院和學校研究生院商量後,終於贊成讓我經過網絡面試的方式參加本校資格面試。事情肯定以後,次日我就飛去了北京。
和夏令營同樣,清軟推免的複試安排也是兩天,第一天中午機試,次日上午面試。我到的時候是前一天的下午,空氣很乾並且輕度污染,下飛機以前就感到鼻子不適。本想在清華校內的食堂找地方吃,但逛了一圈走了三層都毫無胃口,全是蓋澆飯,連一碗湯都找不到,心裏吐槽這粗糙的北方,後來在外面吃了一碗牛肉麪,鹹得不行,面超多吃不完。晚上一我的走在黑漆漆的巷子回賓館的時候,心裏是深深的茫然,百費周章且花了近3k的旅費,到一個不喜歡的城市參加一場幾乎不可能經過的考試,不懂本身在幹嗎,壓力很大。打了個電話給我媽,沒接通就掛了,以爲還帶着哭腔就乾脆別打了,而後掛着眼淚查看次日考試的時間地點、發微信約夏令營時候認識的南大的同窗明天一塊兒行動。而後A了道題吃了個橘子,內心想着算了吧,好歹收穫了本身一我的出遠門的經驗,還見了很久不見的隊友(在快手實習),還逛了夏令營時候沒能好好逛過的清華校園,不論結果,盡力不辜負就好了。
次日的機考明顯比夏令營難度有所提高,三個小時三道題,中等稍偏難,三題其實都不能算純簽到題。第一題是時間轉換,把x年x月x日x時x分x秒換成另外一個計數制度下的時間輸出。其實也就是考慮下閏年而後把時間換成秒,再不斷的取模轉化成新計數就行了。惟一的坑點是在轉化計數制度的乘除中會爆int。恰好我那段時間在敲CCF考試的歷年題,作了好幾道有關閏年的,判閏年的方法背的一清二楚。第二題是數學題,給定P,問 2^P-1 的位數並輸出後500位,位數只要用換底公式變成 P/log2(10) 取上整就行了(顯然2^P和2^P-1是同位數的),後500位開個數組維護下和2連乘就行,有點忘了P的數據範圍,但那時候算了下時間還OK。第三題是區間DP,給一排氣球,每一個氣球有一個收益值,當爆掉某個氣球的時候收益會是它的值乘上左右緊鄰的兩個氣球的值,爆掉以後原來隔壁的兩個氣球又會挨在一塊兒,問按照最優的爆氣球順序最後獲得的最大總收益是多少。後來考完出來後得知這道是LeetCode原題,並且我才恍然想起來我好像還作過...orz反正我是三題都交了,最多有地方沒考慮到可能會錯上幾個case。問了下其餘人好幾個卡第二題的,也有很多放棄第三題的。但沒能多說我就先打車回賓館去參加學院網絡面試了,時間也趕得上,最終面試比較順利。
這時候已經和南大軟院的那羣同窗混的至關熟了,由於機試前他們在聊算法就忍不住的插嘴一塊兒聊,而後又聽他們聊了獎學金啊實習啊項目啥的,蜜汁獲得認同感和歸屬感,最後一塊兒吃了晚飯回院樓看了第二天的面試順序。面試一組14人,我排在第7個,從九點多到那開始等起等到了十點,期間一直在背英文自我介紹和項目介紹那些,特別虛英語面。進去後仍然是中文自我介紹,又像夏令營那會同樣問我以爲昨天機考多少分,而後問我是否是打ACM的爲何不打之類的- -||| 而後問了下項目,恰恰就只問的是作的最很差的那一個,我只說了用的什麼庫以後就沒再問了OTLL(其實我這樣的回答是很是糟糕的,其實這時候說一下這個項目作的時間很短不太好而另外一個項目我認爲作的比較好就能把話題引過去了,致使被問的很是被動)。英語題是用英文說一下你寫做能力怎麼樣。我又又磕磕巴巴的說了兩三分鐘,沒甚邏輯說的亂七八糟的,比起夏令營的時候並好不到哪去...囧。而後又問了下研究生是想作research仍是作工程、學碩和工碩的意向、有沒有聯繫導師有沒有過來實驗室實習過啊什麼的。總之十分緩和輕鬆沒有任何刁難人的地方,我以爲極可能是由於機試成績比較好印象分加成的緣由。
從北京回來還沒幾天就收到了浙大的複試通知。浙大和復旦的時間撞了,而且最終沒進復旦複試,因此就安心準備去浙大。向去年保研浙大的學長了解的狀況是,沒有機試,總成績是20%學校背景+成績排名比+6級成績和80%面試。肯定複試以後我纔開始聯繫導師,用qq郵箱發的第一封郵件等了兩天沒回,有好友建議我用gmail試試,果真一會就回了,抄送給了所在實驗室的另外一位負責老師,通知我去參加實驗室提早面試(以前發清華用的是qq郵箱沒這問題,由於是常常查看的經常使用郵箱並且提醒及時,夏令營時候用gmail收到的通知進了垃圾箱沒注意查看差點錯過考試,不過就此看來部分高校郵箱仍是有屏蔽qq郵件的,之後最好仍是用gmail發orz)。
浙大實驗室面試時間是學院面試的前一天晚上,我準時到了那邊發現只有一位同窗在門口等,驚了,本來覺得這個特別出名的實驗室應該有特別多人來面試。沒等幾分鐘,就有一位年輕的老師出來和咱們確認了一下名字,而後轉頭問我第一個進去怎麼樣。雖然滿頭問號爲何連個抓鬮的機會都不給,但卻又由於是第一個就毫無在場外等待的壓力,拿了早準備好的簡歷深呼吸就進去了。在場應該是實驗室全部老師都到齊了,有六七個。看我拿了簡歷說不用了已經有了(在聯繫導師的時候我有發電子版簡歷過去)。而後開始面試。先是自我介紹,而後問我有沒有帶成績單,我說成績單在外面書包裏orz因而問我最拿手的課程是什麼,我說是數據結構與算法,實驗室大老闆笑了下問我學過紅黑樹沒有,雖然數構課上沒學過但我看過紅皮的那本《算法》,因而說學過一點,老師就說那你說說看紅黑樹是什麼吧。心裏os:看到那個笑就應該以爲不妙了,既然不熟的話就應該說沒學過好嗎!!因而按照僅有的一絲印象按照《算法》那本書的描述說了下2-3樹,而紅黑樹是它的一種實現,說的過程當中還搞混了紅黑樹和AVL樹OTL,老師立刻打斷我問,紅黑樹和AVL樹的區別是什麼?紅黑樹的根節點是紅仍是黑?一個紅節點下可能有幾個黑子節點?我說我不記得了OTL 老師說,那不會就說是不會(掩面而泣)因而就讓我描述一下AVL樹、爲何要有旋轉操做,那問到這個就很是熟悉了信手拈來,而後還問了怎麼在最小堆中插入一個節點(怎麼找到父節點)、最小堆要用什麼數據結構來存,而後話鋒一轉又問了堆和棧的區別,我一愣,按操做系統答了,老師也愣了一下沒說啥orz 接着就開始問項目了,讓我把簡歷上提到的每一個項目都介紹一遍,問的超級詳細,具體到數據量有多少,包括一個提到了推薦算法的有問用戶點擊量多少,想知道一下稀疏度,還被質疑了用某個算法庫的正確性,我作過的基本都是應用爲主,使用到的庫底層的原理一時答不上來,而後另外一個老師就給他科普,兩個老師聊得津津有味orz 問完簡歷以後問了想作的方向,還問了個相關方向實際應用的問題,說沒深刻接觸過不要緊,讓我現場想解決方案。我答了一個初始想法,而後在引導下答了個勉強近似的答案。整個面試持續了半個小時,我出來的時候發如今隔壁等候的同窗又多了兩個,都問我爲何面了那麼久,這應該是我經歷過感受最像面試的面試了,每一個問題都徹底不水全是紮紮實實的乾貨。不過90%的問題都答上來了,總體感受仍是不錯的。
然而次日的學院面試就沒有這麼好運了。本來據說面試順序是按照學校排名安排的,上一屆的學長是一早到那邊等到了下午才輪到,結果此次好像全是亂序,一組有將近30人,我排第13個,恰恰前幾名同窗好多都沒有來,我大概是第4個左右就輪到了,叫到我名字的時候大概才過了不到一個小時,看來去復旦的咕了很多。參加了這麼多場面試,到那時中英文自我介紹早已倒背如流,等候的時候都沒東西可看了,因而很淡定的就去了。
浙大的英語題是由抽籤決定的,一疊紅紙一疊白紙各抽一張,我抽到的白紙是鏈表相比起數組的諸多好處和缺點,紅紙是下推自動機(Pushdown Automation)和有窮自動機的區別。在等候前一名同窗出來的時候有大概快20分鐘時間看這兩張紙。這時候無比慶幸本身學過可計算性理論,雖然已經忘了大半,但憑着印象也至少看得懂它在說啥。其實每張紙上有字的只佔半頁,時間足夠我反覆看了兩三遍。進去後沒有自我介紹環節,發完簡歷後就直接英文問,描述一下鏈表和數組的區別。這不就是把白紙上的內容再講一遍嘛?我雖然現場組織造句的能力不好,可是由於近三個多月都在用流利說打卡,複述跟讀練習不可能可貴倒我,因而balabala說了一通徹底沒斷過,只要能快速成句發音那些都不成問題。而後就開始問中文問題。我運氣超級差,遇到了一整個組的老師都不是我所熟悉方向的,說說超流水線超標量是什麼、linux文件管理的元數據是怎麼組織怎麼對應到數據自己的、描述下網絡的擁塞控制、c++的多態是怎麼實現的、mapreduce的map輸出是怎麼傳遞給reduce的(要不要這麼硬核啊哭了)實在卡殼答不上來的時候,我很無奈的說這些我不太熟悉,擅長的是數據結構與算法,結果這組老師都不是作這塊的。而後有個老師說那我問你一個算法:5雙黑手套3雙灰手套2雙白手套最壞狀況下不放回要抽幾回能成雙。這不是機率論嗎!這到底哪裏算法了!!我按機率論答了半天,她讓我別想太複雜,而後告訴我答案是11,當時沒反應過來出來以後纔想明白確實是11。而後另外一個老師就問了下最短路算法有哪些複雜度是多少,這是我答的最快的一個問題orzz 總之總體體驗極差,不只問題的範圍廣並且一考就是考該科目內容中最重難點問題。出來就聽見兩個妹子在一臉怨念的談論面的都是啥問題差點當場面哭23333。早有傳聞浙大的面試難度可怕,此次算是真的體驗到了。
面完了這最後一場,剩下的就是忐忑地等着結果。中午在學校附近的店鋪裏吃了飯,由於玉泉校區靠近西湖,周圍的商業街有很多好吃的。下午和浙大面試時認識的小夥伴去逛了西湖。而後晚上吃飯時接到了浙大實驗室offer的電話,回賓館後收到了清軟的預錄取郵件,意外的沒有太大的心理波動orz 惟一的聲音就是,一切都結束了。
總之這一段時間下來,劇情也算是跌宕起伏了,就最終而言,應該是我所能取得的最好結果了。問了下以前認識的幾位小夥伴也收到了通知郵件。其實早在以前,南大的那位同窗說,「我原本就是把你視爲要來清華,我們作三年同窗的。」何德何能,很是感動了orz。意識到的一點是,無論什麼東西都要靠本身去爭取啊,雖然迷茫感到壓力很想逃避,但不爭取就必定得不到。不得不認可的是,始終支撐着我這一信念的是一部叫花牌情緣的番,感動於女主對於歌牌比賽的執着和熱忱,從不逃避也不走捷徑,愈難而越發挑戰和嚮往。去年年底的時候,有朋友問過我若是保外校失敗會選擇保本校仍是考研,我說會保本校,由於考研的不肯定性、壓力、艱辛程度都是不可思議的,又爲何要放棄保研機會呢。但在保研的這段時間裏,我所看到的外校的氣氛、同窗的水準都讓我無比嚮往。直到面完浙大當晚心情複雜的等通知的時候還在想,若是保不上,那我就考研。我想去那樣的地方。
接下去的路要怎麼走呢,從一所211躋身名流高校學習也許會十分百分的困難吧。但既然我可以去,那麼就說明個人確有這樣的資格和能力。想通這一點,嚮往和憧憬就賽過了不安,只要盡力去作就足以了。共勉 :D
最後總結一下一點心得:
寫到這裏大概已經有9k字了,能看到最後的十分感謝,我也是服了本身竟然能寫這麼多(話癆本性),但願有所幫助。