前言
我先后参加并通过了2017年北京大学交叉学院大数据中心的夏令营和清华大学计算机系夏令营,本文中注重为大家介绍我在北大叉院的机试面试流程。
个人基本情况
学校:南开大学
专业:软件工程
成绩排名: 2/99
成绩排名: 1/99
英语: CET-6(502)
项目与科研经历:
做过一些小的项目,非常基本,这里就不说了。
竞赛经历:
全国数学建模大赛 国家级二等奖
美国数学建模大赛 H奖
2016 acm-icpc亚洲区域赛(大连) 铜牌
夏令营经历
基本情况介绍
北叉夏令营是7月3日-7月6日,3日主要是报道,晚上有一个开营仪式。4日上午是各个方向的老师对研究方向的介绍,下午是老师的座谈会。下午3点-5点是笔试环节,6点-9点是机试。5日主要是面试,大概按照大家之前报的方向分为了7个小组,每个小组20人左右。
其中,机试要求所有计算机相关方向的学生必须参加,笔试分为两个难度,分别要求数学专业和其他专业(如生物,交通等交叉学科)必须参加。我个人由于水平有限,只参加了机试。在这里建议有能力的同学可以同时参加笔试和机试,比如我们机试的rank1便是我校数学专业的zjz大神。当然,如果觉得自己确实没有那么强的能力,只需要准备自己必须参加的考试即可。
夏令营机试
机试具体的赛制是ACM赛制(关于这个的说明可以参见我的其他文章),3个小时10道题目。总体难度大概可以分为,3道基础题目(基本不需要使用算法,主要考察代码基本功),4道基本算法题(考察贪心,搜索,动态规划和基本数据结构的运用)。3道有难度的算法题(大概考察了图论,数论,动态规划相关算法),需要对算法有一定的了解和应用,单纯掌握算法的实现很难解决该类题目,具体难度可类比ACM区域赛的铜牌-签到题难度。
我们的总体情况大概是2人9题,2人8题,3人7题,11人6题,16人5题(共80人参赛)。我个人认为本次题目的难度与2016年类似,但是由于数据等其他方面的原因,导致某些题目可以暴力的通过,所以,建议大家在比赛时也要勇于尝试,说不定就能“玄”过去(平时训练就算了)。
总的来看,机试的结果还是比较重要的,它是一个证明个人代码能力的最好途径,当然大家也不要过于紧张,一般情况下,通过5,6道题目老师就认为你的代码能力很优秀了。通过3,4道题目在面试中表现的很好也有很大的机会被录取,但是最好不要再低了(因为有3道左右非常基础的题目)。
具体的机试题解请参见我的其他文章。
夏令营面试
我面试的时候被分到第五组,一共是6位老师,老师会先让你做一个自我介绍(英文,建议尽早准备),不需要太长,老师可能会针对你自我介绍的内容提出一些问题,所以,一定要表现出自己最擅长的部分,对于不太熟悉的项目和经历最好不要提。在这里建议大家准备一份简历,面试的时候交给老师,比较清晰明了,可以引导老师提问自己擅长的部分。
面试的时候大家不要担心会问一些老师专业相关的问题,老师会主要针对你的项目经历来判断你的工程能力,研究潜力等等,所以不必担心。
我当时被问到的问题是关于我做的一个关联性分析的项目,里面主要用到了Apriori和PageRank算法,老师很好奇用到了PageRank,问了我很多关于PageRank算法的问题,因为也考虑到了我是计算机方向的学生,没有过多的涉及理论推导,主要是问我怎么实现的,如何优化,为什么使用这个算法等问题,也可以看出老师还是很关心学生的工程(代码)能力的。
总结
以上即是我个人在北叉夏令营的经历分享,希望对大家有所帮助~