2012微软暑期实习笔试

     今天去南大参加了下微软暑期实习生的笔试,根据回忆记录下题目吧,根据自己翻译,有的也许翻译不准确

     试卷为英文, 题目形式为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<int> 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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值