复试摘要
科目代码
软件工程学院(160) 软件工程(083500)
参考教材&方案
- 笔试:
- 离散数学、操作系统(A组);
- 《实用操作系统概念》Silberschatz Abraham、Galvin Peter、Gagne Greg,北京:高等教育出版社(2001);
- 《Discrete Mathematics and Its Applications》 (Fifth Edition) Rosen Kenneth H,北京:机械工业出版社(2003);
- 计算机网络、软件工程(B组)。
- 《Computer Networks>(Fourth edition) Tanenbaum Andrew S,清华大学出版社(2004);
- 《软件工程:实践者之路(第五版)》(第一、二部分) Roger S.Pressman 著清华大学出版社(2001)。
-
专业基础知识(机考+口试);
-
外语听力、口语测试。
复试分数组成
-
最终得分=初试分数×60%+复试分数×40% ;
- 复试分数=笔试200+面试120+英语100+机试80;
-
外语能力测试在面试时进行,没有单独的听力考试 ;
-
复试总成绩大于等于300分为复试合格,低于300分为复试不合格,复试不合格者不予录取 。
机试
必须熟练掌握并会运用一些基本的算法
- 模拟
- 二分
- 递归
- 分治
- 数学
- 贪心
- 动态规划
- DFS
- BFS
机试难度大概与PAT-A相当,比PAT-A的25分题难度相仿。毕竟PAT-A难度接近于浙江大学的复试机试。第一步先把PAT-B全刷过,至少15分和20分题能全部正确。
建议学习一下标准模板库STL
18年软工机试与计科机试支持的语言有C, C++, Java, python3。最建议使用C++。大家在准备初试考试时可能还是主要用的C语言。C++比C语言难的地方主要在于面向对象的特性,但这部分内容在比赛时是可以不用的,所以掌握入门的C++知识的难度与C语言相比并没有太大区别。由于C语言在一些语法细节上不如C++用起来方便,建议比赛时用C++写,可以理解成用的是经过稍许改进的C语言。更重要的是,C++有STL这个使用非常方便的库是C语言没有的,例如,用STL写个整数的排序操作只要1行,而用C语言的写法,则需要六七行才能完成,而且还需要理解函数指针等复杂概念才可以。
还可以学习一下简单的python,遇到大数处理时,python可能对非常大的整数计算,如果是几十位几百位的整数的运算,在python中就当普通的运算就可以正确。大数处理用C或C++会比较麻烦。
-
初学之时,PTA (https://pintia.cn/problem-sets)上的“基础编程题目集”与“数据结构与算法题目集(中文)”都是非常好的,它的测试点会有提示,看你对程序测试中出现的各种情况是否能考虑周全。
-
PAT-B级题目难度也不大,大部分题目的数据要求不高,有时用O(N2)的算法都能过,并且PAT评分标准也是按测试点给分,对于学习编程的初期是非常有用的.
- 所以第一步可以先从PAT-Basic的15分题开始练,然后20分和25分题,再逐渐练习PAT-Advanced级的题目。
-
熟练之后可以在华东师大的EOJ (https://acm.ecnu.edu.cn/)练习,EOJ能根据题目类型的标签筛选题目,以针对某一类的题做专项训练。 EOJ上还会根据过题人数的多少而给不同数额的奖励分,可以依据此初步判断题目的难度。初期也可以选分数低的EOJ的题进行练习。
要在OJ上训练,必须首先在OJ上注册账号,而使用Virtual Judge (https://cn.vjudge.net/)就不用在每个OJ平台都注册一遍,它将许多知名的OJ通过爬虫将题目数据抓取出来,还能够随时进行自定义比赛,或者邀请伙伴们一起比赛。我们就会在这个平台上做模拟机试。