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