Skip to content

Latest commit

 

History

History
42 lines (24 loc) · 7.35 KB

monster复试经验贴.md

File metadata and controls

42 lines (24 loc) · 7.35 KB

2020南大CS复试经验贴 by Monster (2020/05/22)

1.基本情况

  • 初试成绩:364/500
  • 复试成绩:221/250

5月12日南大计算机系进行了线上复试,5月21日中午12点出了拟录取名单。我总成绩学硕排名第5,相比于初试排名第14提高了不少,主要是复试成绩还不错,所以想着单独写一下复试的经验贴,供大家参考。

今年由于疫情原因,几乎所有高校都采取了线上复试的形式,并且都推迟到了5月中下旬才进行复试,南大也不例外。由于是线上复试,复试的内容较往年有较大的改变,南大CS原本的复试形式是笔试150+上机50+面试100,总分300。今年则改成了面试150+笔试100,总分250,其中往年的上机内容融合到了笔试当中。

2.复试

2.1 面试

我是12日下午场,通知的是1:48开始,要求的是提前15分钟开始录像,我大概1:20左右就坐在电脑前开始等了。大概1:49左右,电脑会议视频就开了。

面试我的一共有五个老师,第一个老师上来先问了我一个英语问题:用英语描述计算机网络(老师用英语提问的)。这一块没有提前准备过,但是之前看过Github上面的经验贴有讲用英语描述最喜欢的课,里面给了一个答案就是计算机网络的,我就照葫芦画瓢描述了一下:计算机网络应用广泛,扯了点TCP/IP和UDP,还扯了一下路由算法里面的OSPF,讲了一下这个算法用的是Dijkstra算法。老师顺着又问了一下DNS的作用(还是用英语),这个比较简单,答完以后听到老师说了一句:Good。感觉英语这部分面的还可以。

第二个老师用中文问了一个大数据的问题。问我什么是大数据,为啥现在大数据这么火,现在的大数据和以前的数据库有什么区别联系。这个问题可以说被我捡漏了,我本科期间上过我们院的数据挖掘课程,当时就听我们那个老师扯了好多大数据的东西,于是我就回想着说给了面试老师听(在此感谢我的本科数据挖掘老师)。大概扯了一分钟不到,面试老师觉得还行就过了。

第三个老师也是中文,问了我最小生成树算法有什么,让我描述一个。我描述了一下Prim算法。之后问我最小生成树算法为什么每次要选最小边,我说应该是贪心思想。然后老师又问我能不能说明一下这个算法的正确性,这个相当于让我证明这个算法,我一时间有点懵比就没答上来。

第四个老师问了我学过哪些语言,我说C/C++和Java,老师就让我描述C和Java的区别,我说一下Java可以跨平台,C的话不同平台编译器有差别,并且Java有面向对象思想。老师就又问我面向对象的含义,我大概说了一下。最后问了我一个父类和子类调用的问题,然后就结束了。

最后一个老师让我描述了一下本科做过的项目,我就把我大创的东西简单说了下。然后面试就结束了。总共大概花了10分钟。

整体面试下来感觉老师主要还是聚焦于计算机方面的专业问题来问,这一部分的话其实对科班的优势会大一点。并且老师的问题并不会问的特别细,大部分都是问一些概念性的问题。所以准备面试的时候推荐大家把计算机核心课程的一些书翻一翻,比如845那几门课,还有数据库、编译离散什么的,把一些概念回忆一下。对于跨考的同学,尤其要把初试845那几门课好好看看,老师如果知道你是跨考的话就很有可能就问你845当中的问题。当然也不排除老师会问一些别的问题,听说有几位朋友被问了数学上的问题,换我这个数学渣渣可能就GG了:)。最后,面试最重要的我觉得是感觉吧,你给老师的感觉好的话,面试就不会有问题,另外如果面试当中有真的不会的问题,不要不懂装懂,这是面试大忌,直接大方的告诉老师你不会就可以了,老师也不会为难你的。

2.2 笔试

今年的笔试总分100,离散数学和编译原理各40分,程序设计占20分,相当于往年的笔试加上机。

下午4点开始笔试,学校提前发送了电子答题卡让我们自己打印。题目有老师控制屏幕共享展示,编译、离散和程序设计题目各停留展示20分钟,过了之后就没有了。

第一页是编译,三道题,第一题是一个选择题(10分)选择一个文法能够表示除法优先级大于乘法,属于比较简单的一题,两分钟就能看出来,送分。第二题是一个SDT,给定一个表达式,要你写出根据题目中SDT输出的内容,这一题的话把表达式的语法分析树画出来即可写出答案,也属于送分题。第三题让你根据一个正则表达式写出给定条件下出现的所有可能的串,也比较简单。总的来说编译复习的还行的话,这几题几乎都是送分的,这也与往年的规律相似,所有大家复习复试一定要抓好编译原理。

第一页是离散,是一道大题分了三小题,对于离散的话我其实复习的不是特别好,只是把参考书过了两遍,例题看了看,也没有做过题目。上来看见题干中有群论,心里有点慌,看了一遍题目发现没怎么看懂,感觉离散要凉了。但是还是逼着自己又仔细看了一遍,毕竟不想离散得0分。第二遍看完,发现其实题目只是套了个群的壳子,第一题本质是让你根据题干中给的定义画一个图,看懂以后立马开始写,先把第一题的分拿到手。做完第一题,心里总算有底了,感觉至少离散不会0分了。接着看第二题,可能是因为第一题看懂以后思路打开了,第二题看一遍就看出来本质是要证明第一题画的图是哈密顿图,奈何太激动了,直接把哈密顿图的证明写成了欧拉图的证明,考完以后讨论才发现自己弄错了(心里打出GG)。第三题是要求第一题的图是否和模6加群的一个群图同构,我就靠着印象随便写了点。离散感觉最多第一题拿了分,其他两题白给了。

最后一页是程序设计题,看了遍题目就看出来是编辑距离问题,于是回想着编辑距离的DP代码写了下来,第二小问问了算法思想和能否改进,就写了一下算法思想,改进没写啥。感觉程序设计还是南大一贯的风格,爱考DP。但是南大考的DP并不会特别难,都是一些经典DP或者稍微变一变,比如这次的编辑距离,如果复习的扎实的话应该问题不大。关于算法这一块,我推荐大家把一些常用的算法做一个整理汇总,比如分治法、贪心、回溯和DP,还有几大排序,南大初试和复试都会考算法,我当时初试时候整理了大部分常用的算法,主要来源是数据结构和黄宇的算法书例题,以及本科算法课上的例题,总结好以后就反复的看整理好的算法,尽量去理解算法的原理思想,实在理解不了就强记,多记几次说不定就理解了。这样反复下来基本就足够应付考研了。

3.总结

今年考研复试比较特殊,本来不想写的,感觉对以后的同学帮助不大,但最后想了想还是写一下吧,至少面试部分可以有所参考。另外就是想给自己留一个纪念,纪念一下自己的考研经历。

就这么多