本文共 2152 字,大约阅读时间需要 7 分钟。
今天去南大参加了下微软暑期实习生的笔试,根据回忆记录下题目吧,根据自己翻译,有的也许翻译不准确
试卷为英文, 题目形式为20个选择题,1-7难度为easy,打对3分,少选2分,空白0分,打错-2分;8-18,答对5分,少答3分,打错扣3分,空白0分,最后两题貌似答对8分,少答5分
1、对80个题目进行选择排序,在主循环32次迭代之后,能保证多少个元素是排好序的(never moved again)
A、31
B、32
C、39
D、40
E、以上都不是
2、以下哪些是解决race condition的机制
A、mutex
B、semaphore
C、pipe
D、local call
3、一个有序数列,1,2,....n,栈大小为m,如n=2,m=2,则可能的输出序列为1,2和2,1;则n=7,m=5时,以下哪些为可能输出序列?
选项太长
4、2个二进制数想乘再求和,具体数字肯定记不得了
5、以下程序输出:
int x=11; int const *p = &x; p++; printf("%d\n", *p);A、12
B、gabage num
C、compile error
D、none of above
6、以下代码正确的是
int fun(){ int *a = new int(3); return *a;}int* fun(){ int a[] = {1,2,3}; return a ;}int *fun(){ int a[] = {1,2,3}; int *p = a; return p;}int fun(){ vector a; a.push_back(3); return a[0];}
大概记得是这个样子, 就是堆栈内存能不能返回的问题,vector那个貌似记错了
7、一张5位数保存的image,180度旋转后得到,不同数字为78933,则原数字为以下哪个?
选项肯定记不清,4个5位数
8、考虑以下递归函数power(int b, int e),考虑其时间复杂度
int power(int b, int e){ if (e == 0) return 1; else if (e%2 == 0) return b*power(b, e/2); else return power(b*b, e/2);}A、log
B、sqare
C、linear
D、none of above
9、以下说法正确的是
A、根据中序和前序可以确定一个二叉树
B、根据前序和后续可以确定一个二叉树
C、D忘了
10、
class CTest{private: ___ int a; ___ int b;public: CTest(int input):b(input) { }};int CTest::a = 0;空格处填:
A、const/static
B、static/const
C、D忘了
主要是const和static的初始化方式
11、既可以修饰变量又可以修饰函数的关键词有
A、const
B、virtual
C、extern
D、inline
E、static
12、以下程序的输出是什么
char* fun(char* str, char c){ char* s1 = str; char* s2 = str; while (*s2 != '\0') { if (*s2 == c) s2++; *s1++ = *s2++; } return str;}int _tmain(){ char *str = "abcdcccd"; cout << fun(str, 'c') << endl; return 0;}A、abdd
B、abcdcccd
C、abddcccd
D、忘了
实际这段代码貌似记错了,因为编译不过,*s1和*s2都没申请空间,直接改*s1会提示access violation
13、以下说法正确的是
A、在大数据量情况下,插入和冒泡不高效
B、在数据接近排好的情况下,插入排序比快速排序快
C、一个复杂度
D、忘了
14、一个有2047个节点的3叉B树,高度最大为多少?
A、11
B、12
C、13
D、14
15、对于长n的序列有序输入栈,可能的输出有多少种?
16、
17、扑克牌52张,红色(方块和红桃),黑色(花和黑桃),两副牌,从中间拿2张,为红色的概率为:
A、1/2 , 1/2
B、1/52,1/103
C。。
D、。。。
18、兰亭集序,全文共391字,如果保存到text,那么可能的大小为:
A、782 字节,编码为UTF-16
B、784字节,UTF-16
C、1173字节,UTF-8
D、1179字节,UTF-8
19、LIS(longest increasing substring),比如对于序列2,0,5,1,3,4,的最长递增子串为0,1,3,4,,求最长递增子串的时间和空间复杂度为:
A、N^2, N
B、nlogn、N
C、N,N
D,N,C
20、链表逆序,代码太长,不写了
只能记得这么多,其他忘了,仅供参考,第一题就搞蒙了,楞是不敢选32
转载地址:http://nmcqb.baihongyu.com/