1、复试题笔试题分为专业课笔试和英语笔试,全日制和非全日制都是一样的题。考试时间是英语和专业课加起来一共三个小时。专业课笔试:一共三道题,第一题:实现atof函数,格式是命令行运行输入 atof 13.25 ,输出为13.2500 (小数点后四位),而且要求在程序里用double存储13.25,不能使用系统提供的转换函数。 解答:原理很简单,就是实现细节比较繁琐,可以自己去网上找下相关代码看看。第二题:求二叉树的度为k的节点的数量,非递归。 解答: 我是用一个队列实现二叉树的层次遍历。第三题:给定一个数列(无序、且数列中可以有相等的元素),求中间数。中间数的定义为:数列中小于这个数的元素的数量,等
2、于大于这个数的元素的数量。 如 2 3 5 5 6 7,则5为中间数,输出为:5 5(两个5);若没有中间数,如 1 2 3 4,则输出:-1。题目中没有复杂度要求。 解答:我是先对数组进行排序,然后两个指针分别从首尾向中间扫描一次,即可求出中间数。 因为没有要求复杂度,堆排、归并、快排这些O(nlogn)的算法比较麻烦,所以我用的是优化了的起泡排序,常系数下的性能和O(nlogn)差不了多少,但是严格来讲还是O(n2),写上去还是有点心虚的。英语笔试:共两道题。一道英译汉(20 points),题目是阐述big data的四个以v开头的单词的性质,和以前一样。一道英语作文(30 points),whats your motivation and expectation to join RUC graduate, and whats your plan after/to(此处记不太清了) get master degree . about 200 words.作文和以前一样,可以提前准备默写下来。