尘埃落定,昨天结束了复试,终于被拟录取了,只有真正经历过才知道不容易,一年来受到王道的很多帮助,论坛上软件工程的信息相对来说还是比较少的,所以也想分享下自己的一些经验,帮助后来人。
本人普通一本跨考,初试377,排名第4,复试80.3,最终排名第4,还是比较顺利的。
软件工程学硕不招统考,专硕改成考数二英二了,一开始我是按照数一英一来复习的,再加上408这座大山,复习起来感觉真的压力山大,很痛苦就对了,后来知道改数二英二,就感觉轻松了很多,时间规划上也自由了很多。初试感觉没什么好说的,公共课按部就班地复习就好了,专业课本科期间没学过,所以我是先把四本课本先过一遍,对总体的知识框架有个大概的印象,然后就开始刷王道,做了3遍,计算机组成原理感觉比较难,看了4遍,最后专业课118。
我主要说下复试吧,复试分成4部分,笔试(20%)+机试(30%)+英语面(10%)+专业面(40%),比例较往年有所调整,但变动不大,其中英语面和专业面是一起的。
笔试1.5小时,主要考的是数据结构和算法,还是复习下数据结构就好了,主要考得是队列,栈的操作,建树建图,树图的历遍算法,还有常见的排序算法
今年笔试题大概如下,一共四个题,一个25分:
1.链队列的操作,初始化,入队出队,判满判空,挖几个空让你填,很基本的一些操作
2.给一串代码,判断函数的作用,时间复杂度,然后举例说明,据说这题考的是用拓扑排序来判断图中是否存在环,但我当时没看出来,只写了判断是否存在环
3.写出建哈夫曼树的详细代码和求哈夫曼编码的代码,当时一看这题目就慌了,虽然说知道哈夫曼树的原理,但并没有认真去研究它代码怎么实现啊啊啊,最后冷静下来,按照自己的理解用Java去写了出来,看复试成绩挺高的,估计思路写得还是没什么问题吧
4.判断图中两个顶点间是否存在路劲,挺简单的,可以用DFS或者是BFS
吐槽一下:按照往年的经验,我把常见的排序算法背得出神入化,尼玛最终一个都没考,也熟悉了建树的算法,最后出乎意料得考了哈夫曼树,本来以为这个应该不是什么重点,只能怪自己复习得不全面,所以奉劝各位还是要全面一点,毕竟初试完还有很长时间才复试,可以把数据结构里面常见算法都自己手动实现一下,至少得有个大概的印象
机试也是1.5小时,考的一个比较灵活的操作题,和常规的数据库操作
第一题是按照 比如 “201834,张三 ,操作系统 ,90” 这样一个格式输入 学生信息,然后用xml格式输出信息,有人说是用txt文件读取数据,但可能是我看漏了,我用的是从键盘输入数据,用Java写的,最后写出来了,但还没调试好就到时间了
第二题就没什么好说了,c#+sqlserver,考两个查询,比较简单,今年的环境是win10+vs2015+sqlserver2017
时间还是比较紧的,尽快做完数据库,留多点时间给第一道题调试,今年考试前机房机器有提前开机,可以早点去试试数据库的连接,有问题赶快换机,对了,机试是可以联网的,所以你们自己看着办
英语面和专业面是一起的,有四个老师,面试的老师人很好,全程笑嘻嘻,不必太过紧张,进去后老师让我中文介绍一下,然后问问本科的情况,比如学得最好的课程是什么,这门课程的核心是什么。。。最好带份简历去,显得有诚意一点,我给每位老师都递了一份简历,老师看着简历问了我一些问题,然后一个女老师用英语问了我一个问题,介绍做过的一个项目,还好之前英语准备过,答得还算流利吧,最后就抽纸条回答技术问题,抽到不会可以换,一开始抽了两个都不会,旁边的一个老师帮我解围说我是跨考的,可能本科没学过这些东西,然后那个女老师就帮我找了一个操作系统的问题,说的是为什么在操作系统中要引入分页机制,那几个老师真的人很好,面试问的问题都挺常规的,自信一点就好了,对了,可以多准备下你比较擅长的语言,比如你你擅长C++,可以多了解一下指针的操作一些问题,Java的话可以多看看它的垃圾回收机制,老师有问到c++指针还有内存的问题,我说我对c++不太熟悉,对Java掌握得比较好,所以老师就让我说下Java的垃圾处理,我就说了回收机制,还有当中的一些垃圾回收算法,主要就是尽量把老师引导到你比较擅长的东西上来就没什么大问题
最后,希望我的分享对各位能有所帮助,祝各位学弟学妹都能够顺顺利利地考上自己心仪的学校,考研不易,坚持下去,会有收获的!