微软实习生笔试题

时间:2023-06-18 08:08:29 试题试卷 收藏本文 下载本文

微软实习生笔试题(精选11篇)由网友“李谦李谦李豆”投稿提供,以下是小编整理过的微软实习生笔试题,欢迎阅读分享。

微软实习生笔试题

篇1:微软实习生笔试题

微软实习生笔试题

// test.cpp : 定义控制台应用程序的入口点,

//

#include “stdafx.h”

#define BUFMAX 100

//Find frequency of words of file-B.txt in file-A.txt

void Find (string &filenameA, string &filenameB)

{

string tempA, tempB;

char chA[BUFMAX], chB[BUFMAX];

int cnt = 0, match = 0;

if ( (filenameA.length==0) || (filenameB.length()==0) )

{

cout << “Invalid input filename!” << endl;

return ;

}

ifstream infileA ( filenameA.c_str() );

ifstream infileB ( filenameB.c_str() );

if ( infileA.fail() || infileB.fail() )

{

cout << “Cannot open input files!” << endl;

return ;

}

while ( getline(infileB, tempB) )

{

memcpy ( chB, tempB.c_str(), tempB.length()+1 );

cnt = 0;

infileA.seekg (0, ios::beg);

while ( !infileA.eof() )

{

infileA >>tempA;

if (tempA == tempB)

cnt++;

else

{

memcpy (chA, tempA.c_str(), tempA.length()+1);

篇2:微软笔试题

1. 给定一个整形数组,数组的.大小为N,数组内的数的范围为-N到N,问最好的排序时间复杂度是多少?

A O(logN)

B O(N)

C O(NlogN)

D O(N2) /*(代表平方)*/

E 以上都不对

应该是B,采用位图排序,google位图排序

2. MVC模式是现在开发的一种常用设计模式,请问如下可以充当MVC模式中控制器的是?

A CSS

B HTML 模板

C Javascript

D Web Service

E 以上都不是

我真的不懂,我勉强觉得Web Service可以当作是控制器吧

3. 在编译进程中,会产生Parse Tree的是?

篇3:微软笔试题精解

微软笔试题精解

智力题

1.烧一根不均匀的绳子,从头烧到尾总共需要1个小时,问如何用烧绳子的方法来确定半小时的时间呢?

两边一起烧吧!!

还有确定十五分钟:可以采用三根,

2.10个海盗抢到了100颗宝石,每一颗都一样大小且价值连城。他们决定这么分:

(1)抽签决定自己的号码(1~10);

(2)首先,由1号提出分配方案,然后大家表决,当且仅当超过半数的人 同意时,按照他的方案进行分配,否则将被扔进大海喂鲨鱼;

(3)如果1号死后,再由2号提出分配方案,然后剩下的4个人进行表决,

当且仅当超过半数的人同意时,按照他的方案进行分配,否则将被扔入大海喂鲨鱼

(4)依此类推??

条件:每个海盗都是很聪明的人,都能很理智地做出判断,从而做出选择。

问题:第一个海盗提出怎样的分配方案才能使自己的收益最大化?

未解

3.为什么下水道的盖子是圆的?

因为口是圆的啦!

4.中国有多少辆汽车?

非常多

5.你让工人为你工作7天,回报是一根金条,这根金条平分成相连的7段,你必须在每天结束的时候给他们一段金条。如果只允许你两次把金条弄断,你如 何给你的工人付费?

分1,2,4。

6.有一辆火车以每小时15公里的速度离开北京直奔广州,同时另一辆火车以每小时20公里的速度从广州开往北京。如果有一只鸟,以30公里每小时的速度和两辆火车同时启动,从北京出发,碰到另一辆车后就向相反的方向返回去飞,

就这样依次在两辆火车之间来回地飞,直到两辆火车相遇。请问,这只鸟共飞行了多长的距离?

呵呵,其实就是个时间问题相等的问题啦!

7.你有两个罐子以及50个红色弹球和50个蓝色弹球,随机选出一个罐子, 随机选出一个弹球放入罐子,怎样给出红色弹球最大的选中机会?在你的计划里,得到红球的几率是多少?

未解

8.想像你站在镜子前,请问,为什么镜子中的影像可以左右颠倒,却不能上下颠倒呢?

平面成像原理呗!

9.如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提 捅形状上下都不均匀,问你如何才能准确称出4公升的水?

5-3=2

5-(3-2)=4

10.你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取同种颜色 的两个,

抓取多少次就可以确定你肯定有两个同一颜色的果冻?

抽屉原理

11.连续整数之和为1000的共有几组?

首先1000为一个解。

连续数的平均值设为x,1000必须是x的整数倍。 假如连续数的个数为偶数个,x就不是整数了。x的2倍只能是5,25,125才行。因为平均值为12.5,要连续80个达不到。125/262.5是可以 的。即62,63,61, 64,等等。

连续数的个数为奇数时,平均值为整数。1000为平均值的`奇数倍。 1000=2×2×2×5×5×5;x可以为2,4,8,40,200排除后剩下40和200是 可以的。所以答案为平均值为62.5,40,200,1000的4组整数。

12.从同一地点出发的相同型号的飞机,可是每架飞机装满油只能绕地球飞半周,飞机之间可以加油,加完油的飞机必须回到起点。问至少要多少架次,才能满足有一架绕地球一周。

答案是5架次。一般的解法可以分为如下两个部分:

(1)直线飞行

一架飞机载满油飞行距离为1,n架飞机最远能飞多远?存在的极值问题是不要重复飞行,比如两架飞机同时给一架飞机加油且同时飞回来即可认为是重复,或者换句话说,离出发点越远,在飞的飞机就越少,这个极值条件是显然的,因为n架飞机带的油是一定的,如重复,则浪费的油就越多。比如最后肯定是只有一架飞机全程飞行,注意“全程”这两个 字,也就是不要重复的极值条件。如果是两架飞机的话,肯定是一架给另一架加满油,并使剩下的油刚好能回去,就说第二架飞机带的油耗在3倍于从出发到加油的 路程上,有三架飞机第三架带的油耗在5倍于从出发到其加油的路程上,所以n架飞机最远能飞行的距离为s 1+1/3+? +1/(2n+1)这个级数是发散的,所以理论上只要飞机足够多最终可以使一架飞机飞到无穷远,当然实际上不可能一架飞机在飞行1/(2n+1)时间内同 时给n-1个飞机加油。

(2)可以迎头接应加油 一架飞机载满油飞行距离为1/2,最少几架飞机能飞行距离1?也是根据不要重复飞行的极值条件,得出最远处肯定是只有一架飞机飞行,这样得出由1/2处对 称两边1/4肯定是一架飞机飞行,用上面的公式即可知道一边至少需要两架 飞机支持,(1/3+1/5)/2>1/4(左边除以2是一架飞机飞行距离为1/2),但是有一点点剩余,所以想像为一个滑轮(中间一个飞机是个绳 子,两边两架飞机是个棒)的话,可以滑动一点距离,就说加油地点可以在一定距离内变动(很容易算出来每架飞机的加油地点和加油数量,等等)

篇4:微软经典智力/IQ笔试题

微软经典智力/IQ笔试题

1:在世界范围内禁止生产各种破坏臭氧层的化学物质可能仅仅是一种幻想,大量这样的化学物质已经生产出来,并且以成千上万台冰箱的冷却剂的形式而存在,当这些化学物质到达大气层中的臭氧层时,其作用不可能停止。因此,没有任何方式可以阻止这类化学物质进一步破坏臭氧层。

以下哪项如果为真,则能最严重地削弱以上论证?

A.不可能精确地测量冰箱里冷却剂这种破坏臭氧层的化学物质的量是多少

B.不会破坏臭氧层的替代品还未开发出来,并且替代品可能比冰箱目前使用的冷却剂昂贵

C.即使人们放弃使用冷藏设备,已经存在的冰箱里的冷却剂也是对大气臭氧层的一个威胁

D.当冰箱的使用寿命结束时,冰箱里的冷却剂可完全回收并且重新利用

2:虽然防滑刹车系统确实具有某些独特的安全性能,但统计数据显示:有防滑刹车系统的汽车的事故发生率反而比没有这种系统的汽车要高。

以下各项如果为真,都能对题干陈述的现象做出解释,除了:

A.防滑刹车系统比普通刹车系统更易出现故障。

B.防滑刹车系统的安全性能只在时速80公里内有效,而最严重的交通事故都有发生在高速公路上。

C.大多数有防滑刹车系统汽车的司机缺少正确使用该系统的必要培训。

D.防滑刹车系统具有普通刹车系统不具有的某些特殊安全性能,但同时需要昂贵的特殊维修才能达到普通刹车系统一般维修就能达到的水平。

3:甲:最近,我被一家航空公司的某一航班拒绝了一个我已经确认过的预定座位,因为这家航空公司超额预定了那个航班。因此,我被迫乘下一班可乘的航班,该航班两个小时后才起飞,我错过了一个非常重要的商业会议。即使我预定的那个航班在最后一分钟因为天气原因而被取消,航空公司也应该因没能让我乘坐那个航班而给我赔偿。

乙:从道义上来说,航空公司没有给你赔偿的责任,即使你没被拒绝乘坐早一点的航班,无论如何你都会错过你的商业会议。

下面哪一条原则,如果正确,能证明乙对甲的反应,即从道义上讲航空公司有责任赔偿那些在某一航班上确认了预定座位而又被拒绝乘坐该航班的乘客是合理的?

A.如果迫使乘坐晚一点航班的惟一原因是航空公司已超额预定了那次航班。

B.只有当乘客被迫乘坐晚一点的航班的原因不是因为天气恶劣而取消了该航班。

C.只有当航空公司没有超额预定最初的.那次航班,乘客也没有被迫乘坐晚一点的航班。

D.即使乘客被迫乘坐晚一点的航班的惟一原因是航空公司因为天气不好而取消了最初的那次航班。

4:在一本300页的书中,数字“1”在书中出现了多少次?

A.140

B.160

C.180

D.120

5:如果一个用电单位的日均耗电量超过所在地区80%用电单位的水平,则称其为该地区的用电超

标单位。近三年来,湖州地区的用电超标单位的数量逐年明显增加。

如果以上断定为真,并且湖州地区的非单位用电忽略不计,则以下哪项断定也必定为真?

I.近三年来,湖州地区不超标的用电单位的数量逐年明显增加。

II.近三年来,湖州地区日均耗电量逐年明显增加。

III.今年湖州地区任一用点超标单位的日均耗电量都高于全地区的日均耗电量。

A.只有I

B.只有II

C.只有III

D.I、II 和III

6:据最近的统计,在需要同等学力的十个不同职业中,教师的平均工资五年前排名第九位,而目前上升到第六位;另外,目前教师的平均工资是其他上述职业的平均工资的86%,而五年前只是55%。因此,教师工资相对偏低的状况有了较大的改善,教师的相对生活水平有了很大的提高。

上述论证基于以下哪项假设?( )

Ⅰ近五年来的通货膨胀率基本保持稳定。

Ⅱ和其他职业一样,教师中的最高工资和最低工资的差别是很悬殊的。

Ⅲ学历是确定工资标准的主要依据。

Ⅳ工资是实际收入的主要部分。

A.Ⅰ、Ⅲ

B.Ⅱ、Ⅳ

C.Ⅲ

D.Ⅲ、Ⅳ

7:某地住着甲、乙两个部落,甲部落总是讲真话,乙部落总是讲假话。一天,一个旅行者来到这里,碰到一个土著人A。旅行者就问他:“你是哪一个部落的人?”A 回答说:“我是甲部落的人。”这时又过来一个土著人B,旅行者就请A去问B属于哪一个部落。A问过B后,回来对旅行者说:“他说他是甲部落的人。” 根据这种情况,对A、B所属的部落,旅行者所作出的正确的判断是下列的哪一项?

A.A是甲部落的人,B是乙部落的人。

B.A是乙部落的人,B是甲部落的人。

C.A是甲部落的人,B所属部落不明。

D.A所属部落不明,B是乙部落的人。

8:建筑历史学家丹尼斯教授对欧洲19世纪早期铺有木地板的房子进行了研究。结果发现较大的房间铺设的木板条比较小房间的木板条窄得多。丹尼斯教授认为,既然大房子的主人一般都比小房子的主人富有,那么,用窄木条铺地板很可能是当时有地位的象征,用以表明房主的富有。以下哪项如果为真,最能加强丹尼斯教授的观点?

A.欧洲19世纪晚期的大多数房子所铺设的木地板的宽度大致相同。

B.丹尼斯教授的学术地位得到了国际建筑历史学界的公认。

C.欧洲19世纪早期,木地板条的价格是以长度为标准计算的。

D.欧洲19世纪早期,有些大房子铺设的是比木地板昂贵得多的大理石。

9:很久以前,在法国土豆被称为“鬼苹果”,农民们都不愿意引种。一位农学家想出一个方法,在一块土地上种植土豆,并由一支着军礼服、全副武装的国王卫队看守,到了夜晚,卫队故意撒走。结果人们纷纷来偷土豆,引种到自己田里,通过种方法,土豆的种植在法国得到迅速的推广,由此可推出的最恰当的结论是

A.有些东西越禁止,就越引起人们的兴趣,比如某些电影、书籍越禁止越走俏

B.人们都有猎奇心理

C.人们都有违反规定、打破限制的倾向

D.新事物的出现,开始都是不受欢迎的

10:数字推理:5,3,2,1,1,______

A.-3

B.-2

C.0

D.2

11:数字推理:81 30 15 12 ______

A.10

B.8

C.13

D.14

12:某游泳馆门口竖着一块牌子“不会游泳者禁入”,

这天,来了一群人,他们都是会游泳的人。如果牌子上的话得到准确的理解和严格的执行,那么以下诸判断中,只有一项是真的。这一真的判断是

A.他们可能不会被允许进入。

B.他们一定不会被允许进入。

C.他们一定会被允许进入。

D.他们不可能被允许进入。

13:一个足球教练这样教导他的队员:“足球比赛从来是以结果论英雄。在足球比赛中,你不是赢家就是输家;在球迷的眼里,你要么是勇敢者,要么是懦弱者。由于所有的赢家在球迷眼里都是勇敢者,所以每个输家在球迷眼里都是懦弱者。”

为使上述足球教练的论证成立,以下哪项是必须假设的?

A.在球迷看来,球场上勇敢者必胜。

B.球迷具有区分勇敢和懦弱的准确判断力。

C.球迷眼中的勇敢者,不一定是真正的勇敢者。

D.即使在球场上,输赢也不是区别勇敢和懦弱的唯一标准。

14:美国的一个动物保护组织试图改变蝙蝠在人们心目中一直存在的恐怖形象。这个组织认为,蝙蝠之所以让人觉得可怕和遭到捕杀,仅仅是因为这些羞怯的动物在夜间表现出特别的活跃。

以下哪项如果为真,将对上述动物保护组织的观点构成最严重的质疑?

A.蝙蝠之所以能在夜间特别活跃,是由于它们具有在夜间感知各种射线和声波的特殊能力。

B.蝙蝠是夜间飞行昆虫的主要捕食者。在这样的夜间飞行昆虫中,有很多是危害人类健康的。

C.蝙蝠在中国及其它许多国家同样被认为是一种恐怖的飞禽。

D.美国人熟知的浣熊和中国人熟知的食蚊雀,都是些在夜间特别活跃的羞怯动物,但在众的印象中一般并没有恐怖的印象。

15:结构上的双边对称是一种常见的特性。因此,也就是说它赋予了生物生存的有利条件。毕竟,如果双边对称不能赋予这样的有利条件,那么它就不会成为一种常见的特性。

下面哪一辩论的推理模式与上面的辩论最为相似?

A.既然是Sawyer在与市**谈判,那么市**一定会认真考虑那件事情。毕竟,如果Sawyer不出现,市**就会坚持推迟谈判。

B.很明显,没有人比Trumbull更胜任那个工作。实际上,甚至对那些看见过Trumbull工作的人建议可能会有一个更合格的候选人会显得非常地荒谬。

C.如果Powell缺乏谈判的高级技巧,她就不可能被委任为这个案子的仲裁人。众所周知,她是指派的仲裁人,因此,尽管有些人贬低她,但是她的谈判技巧一定较高。

D.既然Varga在那时外出度假,那么一定是Rivers进行了那个秘密的谈判。任何其他的解释几乎都是毫无意义的,因为Rivers从来不参与谈判,除非Varga不在。

16:在某次网球联赛中,如果甲和乙都没有出线,则丙一定出线。上述前提中再增加以下哪项,可推出“甲出线”的结论?

A.丙出线但乙没出线。

B.丙和乙都出线了。

C.丙和已都没出线。

D.丙没出线但乙出线了

17:张老师的班里有60个学生,男女生各一半。有40个学生喜欢数学;有50个学生喜欢语文。这表明可能会有:

A.20个男生喜欢数学而不喜欢语文

B.20个喜欢语文的男生不喜欢数学

C.30个喜欢语文的女生不喜欢数学

D.30个喜欢数学的男生只有10个喜欢语文

18:有人从一手纸牌中选定一张牌,他把这张牌的花色告诉X先生,而把点数告诉了Y先生,两位先生都知道这手纸牌是:黑桃J、8、4、2;红心A、Q、4;方块A、5;草花K、Q、5、4。X先生和Y先生都很精通逻辑,很善于推理。他们之间有对话如下:

Y先生:我不知道这张牌。

X先生:我知道你不知道这张牌。

Y先生:现在我知道这张牌了。

X先生:现在我也知道了。

根据以上对话,推测这是下面哪一张牌?

A.方块A

B.红心Q

C.黑桃4

D.方块5

19:一项全球范围的调查显示,近来:吸烟者的总数基本保持不变;每年只有10%的吸烟者改变自已的品牌,即放弃原有的品牌而改吸其他品牌:烟草制造商用在广告上的支出占其毛收入的10%。

在Z烟草公司的年终董事会上,董事A认为,上述统计表明,烟草业在广告上的收益正好等于其支出,因此,此类广告完全可以不做。董事B认为,由于上述10%的吸烟者所改吸的香烟品牌中几乎不包括本公司的品牌,因此,本公司的广告开支实际上是笔亏损性开支。

77. 以下哪项,构成对董事A的结论的最有力质疑?

A.董事A的结论忽视了:近年来各种品牌的香烟的价格有了很大的变动。

B.董事A的结论基于一个错误的假设:每个吸烟者在某个时候只喜欢一种品牌。

C.董事A的结论基于一个错误的假设:每个烟草制造商只生产一种品牌。

D.董事A的结论忽视了:世界烟草业是一个由处于竞争状态的众多经济实体组成的。

20:今天是星期二,55×50天之后是

A.星期一

B.星期二

C.星期三

D.星期四

简答题

21:模样相同的哥俩同时应征入伍,他们有血缘关系且出生日期及父母的名字完全相同。连长问他俩是不是双胞胎。他们说不是。请问这是为什么?

22:现在有六根等长的木棍,它们不能被折断,弯曲。相互之间只允许头尾相接,不允许相互重叠。把它们摆成4个三角形。

23:医院里的医务人员,包括我在龋总共是16名医生和护士。下面讲到的人员情况,无论是否把我计算在龋都不会有任何变化。在这些医务人员中:

(一)护士多于医生。

(二)男医生多于男护士。

(三)男护士多於女护士。

(四)至少有一位女医生。」

这位说话的人是什么性e和职务?

篇5:微软校园招聘笔试题

1、Suppose that a selection sort of 80 items has completed 32 iterations of the main loop. How many items are now guaranteed to be in their final spot (never to be moved again)?

A、16 B、31 C、32 D、39 E、40

2、Which synchronization mechanism(s) is/are used to avoid race conditions among processes/threads in operating system?

A、Mutex B、Mailbox C、Semaphore D、Local procedure call

3、There is a sequence of n numbers 1,2,3,...,n and a stack which can keep m numbers at most. Push the n numbers into the stack following the sequence and pop out randomly . Suppose n is 2 and m is 3,the output sequence may be 1,2 or 2,1,so we get 2 different sequences . Suppose n is 7,and m is 5,please choose the output sequence of the stack.

A、1,2,3,4,5,6,7

B、7,6,5,4,3,2,1

C、5,6,4,3,7,2,1

D、1,7,6,5,4,3,2

E、3,2,1,7,5,6,4

4、Which is the result of binary number 01011001 after multiplying by 0111001 and adding 1101110?

A、0001010000111111

B、0101011101110011

C、0011010000110101

转化为10进制操作以后,再转化为二进制就可以了,

5、What is output if you compile and execute the following c code?

[cpp] view plaincopyprint?void main

{

int i = 11;

int const *p = &i;

p++;

printf(“%d”,*p);

}

void main()

{

int i = 11;

int const *p = &i;

p++;

printf(“%d”,*p);

}A、11

B、12

C、Garbage value

D、Compile error

E、None of above

6、Which of following C++ code is correct ? C

A、

[cpp] view plaincopyprint?int f()

{

int *a = new int(3);

return *a;

}

int f()

{

int *a = new int(3);

return *a;

}B、[cpp] view plaincopyprint?int *f()

{

int a[3] = {1,2,3};

return a;

}

int *f()

{

int a[3] = {1,2,3};

return a;

}C、[cpp] view plaincopyprint?vectorf()

{

vectorv(3);

return v;

}

vectorf()

{

vectorv(3);

return v;

}D、[cpp] view plaincopyprint?void f(int *ret)

{

int a[3] = {1,2,3};

ret = a;

return ;

}

void f(int *ret)

{

int a[3] = {1,2,3};

ret = a;

return ;

}E、None of above

7、Given that the 180-degree rotated image of a 5-digit number is another 5-digit number and the difference between the numbers is 78633, what is the original 5-digit number?

A、60918 B、91086 C、18609 D、10968 E、86901

8、Which of the following statements are true

A、We can create a binary tree from given inorder and preorder traversal sequences.

B、We can create a binary tree from given preorder and postorder traversal sequences.

C、For an almost sorted array,Insertion sort can be more effective than Quciksort.

D、Suppose T(n) is the runtime of resolving a problem with n elements, T(n)=O(1) if n=1;

T(n)=2*T(n/2)+O(n) if n>1; so T(n) is O(nlgn)

E、None of above

9、Which of the following statements are true?

A、Insertion sort and bubble sort are not efficient for large data sets.

B、Qucik sort makes O(n^2) comparisons in the worst case.

C、There is an array :7,6,5,4,3,2,1. If using selection sort (ascending),the number of swap operations is 6

D、Heap sort uses two heap operations:insertion and root deletion (插入、堆调整)

E、None of above

10、Assume both x and y are integers,which one of the followings returns the minimum of the two integers?

A、y^((x^y) & -(x

B、y^(x^y)

C、x^(x^y)

D、(x^y)^(y^x)

E、None of above

x

11、The Orchid Pavilion(兰亭集序) is well known as the top of “行书”in history of Chinese literature. The most fascinating sentence is “Well I know it is a lie to say that life and death is the same thing, and that longevity and early death make no difference Alas!”(固知一死生为虚诞,齐彭殇为妄作).By counting the characters of the whole content (in Chinese version),the result should be 391(including punctuation). For these characters written to a text file,please select the possible file size without any data corrupt.

A、782 bytes in UTF-16 encoding

B、784 bytes in UTF-16 encoding

C、1173 bytes in UTF-8 encoding

D、1176 bytes in UTF-8 encoding

E、None of above

12、Fill the blanks inside class definition

[cpp] view plaincopyprint?class Test

{

public:

____ int a;

____ int b;

public:

Test::Test(int _a , int _b) : a( _a )

{

b = _b;

}

};

int Test::b;

int main(void)

{

Test t1(0 , 0) , t2(1 , 1);

t1.b = 10;

t2.b = 20;

printf(“%u %u %u %u”,t1.a , t1.b , t2.a , t2.b);

return 0;

}

class Test

{

public:

____ int a;

____ int b;

public:

Test::Test(int _a , int _b) : a( _a )

{

b = _b;

}

};

int Test::b;

int main(void)

{

Test t1(0 , 0) , t2(1 , 1);

t1.b = 10;

t2.b = 20;

printf(“%u %u %u %u”,t1.a , t1.b , t2.a , t2.b);

return 0;

} Running result : 0 20 1 20

A、static/const

B、const/static

C、--/static

D、conststatic/static

E、None of above

13、A 3-order B-tree has 2047 key words,what is the maximum height of the tree?

A、11 B、12 C、13 D、14

解析:m阶B-树的根节点至少有两棵子树,其他除根之外的所有非终端节点至少含有m/2(向上取整)棵子树,即至少含有m/2-1个关键字。根据题意,3阶的B-树若想要达到最大的高度,那么每个节点含有一个关键字,即每个节点含有2棵子树,也就是所谓的完全二叉树了,这样达到的高度是最大的。即含有2047个关键字的完全二叉树的高度是多少,这也是为什么这种题只出3阶的原因吧,就是为了转化成求完全二叉树的深度。很明显求得高度是11,但是由于B-树还有一层所谓的`叶子节点,可以看作是外部结点或查找失败的结点,实际上这些结点不存在的,指向这些结点的指针为空。所以不考虑叶子节点信息的时候,最大高度是11,考虑叶子节点信息的时候,最大高度就是12了。

14、In C++,which of the following keyword(s)can be used on both a variable and a function?

A、static B、virtual C、extern D、inline E、const

15、What is the result of the following program?

[cpp] view plaincopyprint?char *f(char *str , char ch)

{

char *it1 = str;

char *it2 = str;

while(*it2 != '\0')

{

while(*it2 == ch)

{

it2++;

}

*it1++ = *it2++;

}

return str;

}

int main(void)

{

char *a = new char[10];

strcpy(a , “abcdcccd”);

cout<

return 0;

}

char *f(char *str , char ch)

{

char *it1 = str;

char *it2 = str;

while(*it2 != '\0')

{

while(*it2 == ch)

{

it2++;

}

*it1++ = *it2++;

}

return str;

}

int main(void)

{

char *a = new char[10];

strcpy(a , “abcdcccd”);

cout<

return 0;

}A、abdcccd

B、abdd

C、abcc

D、abddcccd

E、Access violation

16、Consider the following definition of a recursive function,power,that will perform exponentiation.

[cpp] view plaincopyprint?int power(int b , int e)

{

if(e == 0)

return 1;

if(e % 2 == 0)

return power(b*b , e/2);

else

return b * power(b*b , e/2);

}

int power(int b , int e)

{

if(e == 0)

return 1;

if(e % 2 == 0)

return power(b*b , e/2);

else

return b * power(b*b , e/2);

}Asymptotically(渐进地) in terms of the exponent e,the number of calls to power that occur as a result of the call power(b,e) is

A、logarithmic

B、linear

C、quadratic

D、exponential

17、Assume a full deck of cards has 52 cards,2 blacks suits (spade and club) and 2 red suits(diamond and heart). If you are given a full deck,and a half deck(with 1 red suit and 1 black suit),what is the possibility for each one getting 2 red cards if taking 2 cards?

A、1/2 1/2

B、25/102 12/50

C、50/51 24/25

D、25/51 12/25

E、25/51 1/2

18、There is a stack and a sequence of n numbers(i.e. 1,2,3,...,n), Push the n numbers into the stack following the sequence and pop out randomly . How many different sequences of the n numbers we may get? Suppose n is 2 , the output sequence may 1,2 or 2,1, so wo get 2 different sequences .

A、C_2n^n

B、C_2n^n - C_2n^(n+1)

C、((2n)!)/(n+1)n!n!

D、n!

E、None of above

19、Longest Increasing Subsequence(LIS) means a sequence containing some elements in another sequence by the same order, and the values of elements keeps increasing.

For example, LIS of {2,1,4,2,3,7,4,6} is {1,2,3,4,6}, and its LIS length is 5.

Considering an array with N elements , what is the lowest time and space complexity to get the length of LIS?

A、Time : N^2 , Space : N^2

B、Time : N^2 , Space : N

C、Time : NlogN , Space : N

D、Time : N , Space : N

E、Time : N , Space : C

20、What is the output of the following piece of C++ code ?

[cpp] view plaincopyprint?#include

using namespace std;

struct Item

{

char c;

Item *next;

};

Item *Routine1(Item *x)

{

Item *prev = NULL,

*curr = x;

while(curr)

{

Item *next = curr->next;

curr->next = prev;

prev = curr;

curr = next;

}

return prev;

}

void Routine2(Item *x)

{

Item *curr = x;

while(curr)

{

cout<

curr = curr->next;

}

}

int main(void)

{

Item *x,

d = {'d' , NULL},

c = {'c' , &d},

b = {'b' , &c},

a = {'a' , &b};

x = Routine1( &a );

Routine2( x );

return 0;

}

#include

using namespace std;

struct Item

{

char c;

Item *next;

};

Item *Routine1(Item *x)

{

Item *prev = NULL,

*curr = x;

while(curr)

{

Item *next = curr->next;

curr->next = prev;

prev = curr;

curr = next;

}

return prev;

}

void Routine2(Item *x)

{

Item *curr = x;

while(curr)

{

cout<

curr = curr->next;

}

}

int main(void)

{

Item *x,

d = {'d' , NULL},

c = {'c' , &d},

b = {'b' , &c},

a = {'a' , &b};

x = Routine1( &a );

Routine2( x );

return 0;

}

A、c b a d

B、b a d c

C、d b c a

D、a b c d

E、d c b a

篇6:微软校园招聘笔试题

1、数据库

基于某个条件选出一个订单列表,考的是最基本的数据库语言select * from * where *

2、不能用于进程间通信的是

A、Named event

B、Named pipe

C、Critical section

D、Shared memory

3、shallow copying (浅拷贝)的特征

英文太烂不知道shallow copying怎么翻译不敢选

4、Functional programming(函数式编程)的特点

完全不了解functional programing

考了”没有副作用”,“不修改状态”,“引用透明”引用透明的概念类似于可重入

5、以下算法用到贪婪算法的是

A、Dijkstra

B、Prim

C、Kruskal

D、Floyd- Warshall

E、KMP string match

6、1,2,3,…1000 一共出现了多少个0

A、189

B、191

C、193

D、195

算出来是192个可是没有这个答案估计题目出错了,

7、T(x)=1 (x<=1), T(n)=25*T(n/5)+n^2 求T(n)的时间复杂度

A、O(n*log(n))

B、O(log(n))

C、O(n^2*log(n))

D、O(n^3*log(n))

T(n)=25*(25*T(n/25)+(n/5)^2)+n^2=25^2*T(n/(5^2))+2*n^2=25^(log(n)/log5)+(log(n)/log5)*n^2=n^2+n^2*log(n) =O(n^2*log(n))

8、下列属于设计模式中 ”creational pattern” (创建型)的是?

A、Facade

B、Singleton

C、Bridge

D、Composite

Facade composite bridge 都属于Structural(结构型)

9、建立一个TCP连接的过程?

三次握手baike.baidu.com/view/1003841.htm

答案中好像没有SYN,SYN+ACK,ACK,于是我就选了 E、None of above

10、二叉树的pre-order traversal为abcdefg,则它的in-order traversal可能是?

A、abcdefg

B、gfedcba

C、efgdcba

D、bceadfg

E、bcdaefg

以前序遍历abc为例,只有三个节点,中序遍历可能是cba, bca, bac, abc, acb

11、15个球放在4个袋子中,每个袋子至少有一个球且每个袋子中球的数目不同,总共有多少种放法?

A、4

B、5

C、6

D、7

E、None of above

不知道除了枚举有没有别的更好的办法

12、给了4个函数,可以看出其中第一个为选择排序,第二个为冒泡排序第三个感觉代码本身就有些问题第四个为快速排序。问哪一个排序能将数组a={(3,4),(6,5),(2,7),(3,1),(1,2) }变为{(1,2), ,(2,7), (3,1),( 3,4),(6,5)}

只比较第一个元素。

Stuct A{

Int key1;

Int key2;

};

比较函数为 int cmp(A x, A y) {return x.key1-y.key1;)

选择排序, 此题代码是选择的最小出列。选出最小的与前面的交换,其条件是cmp<0, 显然第一趟(3,4)与(1,2)交换后到了(3,1)的后面然后是(6,5)与(2,7)交换,其条件是cmp<0,所以(6,5)与(3,1 )交换,最后的输出结果满足题目要求

冒泡排序 其条件是cmp<0,显然(3,4)不可能会与(3,1)交换,因此不符合题目要求

快速排序是不稳定的排序,不能保证谁在谁前面,快排的条件是cmp<=0且其哨兵都是选择序列中的第一个作为哨兵,结合本题所给的数组a,结果是与题目相符。

13、继承、虚函数

下面程序输出结果

[cpp] view plaincopyprint?#include

using namespace std;

class Base

{

public:

char Value() { return 'A';}

virtual char VirtualValue() { return 'X';}

};

class Derived:public Base

{

public:

char Value(){return'U';}

};

class VirtualDerived:virtualpublic Base

{

public:

char Value() { return 'Z';}

char VirtualValue() { return 'V';}

};

void main()

{

Base *p1=new Derived();

Base *p2=new VirtualDerived();

cout<

p1->VirtualValue()<<“ ”<<

p2->Value()<<“ ”<<

p2->VirtualValue()<

}

#include

using namespace std;

class Base

{

public:

char Value() { return 'A';}

virtual char VirtualValue() { return 'X';}

};

class Derived:public Base

{

public:

char Value(){return'U';}

};

class VirtualDerived:virtualpublic Base

{

public:

char Value() { return 'Z';}

char VirtualValue() { return 'V';}

};

void main()

{

Base *p1=new Derived();

Base *p2=new VirtualDerived();

cout<

p1->VirtualValue()<<“ ”<<

p2->Value()<<“ ”<<

p2->VirtualValue()<

}输出:AXAV

14、两个线程thread1: x=1;r1=y; thread2:y=1;r2=x; x和y初始值为0,两者皆为全局变量,程序运行过后r1和r2的值可能是

A、r1=1,r2=1

B、r1=1,r2=0

C、r1=0,r2=1

D、r1=0,r2=0

15、A,B,C,D都为32位整型,基于以下给定的C,D能否得出A,B

A、C=A+B,D=A-B

B、C=A+2*B,D=A+B

C、C=A+B,D=B

D、C=A-B,D=(A+B)>>1

E、C=A*B,D=A/B

该题主要是考虑越界问题

对于A选项假设A>0,B>0;C可能越界使得C=A+B-2^32举个反例:A=B=2^31-1 C=-2,D=0;

A=B=-1,C=-2,D=0

对于C选项不管C是否越界总能得到A=C-D, B=D

对于B选项我们可以考虑Q=A+B, C=Q+B ,D=Q跟C的那个一样,就能求出Q与B Q=A+B,B又已知A可求

D选项:A=B=-1 A=B=2^31-1

E选项:A=B=2^15, A=B=2^31

16、BNF

很简单的一个题目

17、http协议

18、不属于栈的基本操作

A、pop

B、push

C、if empty

D、sort

19.一颗完全二叉树有n个节点,求深度

A、lg(n)/lg2

B、1+lg(n)/lg2

篇7:阿里巴巴实习生笔试题

阿里巴巴实习生笔试题

二进制来编码字符串”abcdabaa”,需要能够根据编码,解码回原来的字符串,最少需要______位的二进制字符串,

有两个N*N的矩阵A和B,想要在PC上按矩阵乘法基本算法编程实现计算A*B。假设N较大,本机内存也很大,可以存下A、B和结果矩阵。那么,为了计算速度,A和B在内存中应该如何存储(按行存指先存储第一行,再第二行,直到最后一行;按列存指先存储第一列,再第二列,直到最后一列)

数据结构分为逻辑结构和存储结构,下列数据结构中不属于存储结构的是______。

• 线性链表

• 二叉链表

• 栈与队列

• 循环队列

下列关于无向连通图特性的叙述中,正确的是______。

Ⅰ.所有顶点的度之和为偶数

Ⅱ.边数大于顶点个数

Ⅲ.至少有一个顶点的度为1

• 只有Ⅰ

• 只有Ⅱ

• Ⅰ和Ⅱ

• Ⅰ和Ⅲ

某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间的 缓存时间)分别是90ns、80ns、70ns和60ns,则该计算机的CPU时钟周期至少是____。

• 90ns

• 80ns

• 70ns

• 60ns

主机甲和主机乙间已建立一个TCP连接,主机甲向主机乙发送了两个连续的TCP段,分别包含300字节和500字节的有效载荷,第一个段的序列号为200,主机乙正确接收到两个段后,发送给主机甲的确认序列号是 。

• 500

• 700

• 800

• 1000

IP数据报头采用______字节序,在此字节序下从低地址到高地址0×1234的表示形式为______。

• big_endian, 0×12 0×34 0 0

• little_endian,0×34 0×12 0 0

• big_endian, 0 0 0×12 0×34

• little_endian,0 0 0×34 0×12

假设栈S和队列Q的初始状态为空,元素a、b、c、d、e、f依次通过S和Q,即每一个元素必须先进栈,之后再出栈进入队列。若这6个元素出队的顺序是b、d、c、f、e、a,则栈S的'容量至少应该为______。

• 3

• 4

• 5

• 6

硬件设备的寿命通常符合指数分布,即无记忆性,也就是如果一个设备当前正常工作,那么剩余预期寿命和已经工作的时间无关。假定某种设备1000台,在一年之内坏掉500台(无维修),那么在有维修(设备坏掉立刻换新的)的情况下,一年之内需要换______台该设备。

• 400台

• 500台

• 753台

• 1000台

下述描述中,正确的是____。

• char const * pointer表示pointer指向的内存区域的内容不能修改

• const char *pointer表示pointer不能指向别的内存地址

• char * const pointer 表示pointer指向的内存区域的内容不能修改

• const char * const pointer在C++语言中不合法

在linux中,列举当前目录下文件的是哪个命令______,

• ps

• cd

• mv

• ls

某二叉树的先序遍历是12453,中序遍历是42513,那么其后续遍历是______。

• 45231

• 42351

• 12345

• 54321

需要频繁的插入删除操作使用什么结构比较合适______。

• 数组

• 队列

• 链表

• 栈

你有一个3X3X3的立方体。你现在在正面左上的顶点,需要移动到对角线的背面右下的顶点中。每次移动不限距离,但只能从前至后、从左至右、从上至下运动,即不允许斜向或后退。有______种方法。

• 9

• 90

• 180

• 1680

一个容器类数据结构,读写平均,使用锁机制保证线程安全。如果要综合提高该数据结构的访问性能,最好的办法是______。

• 只对写操作加锁,不对读操作加锁

• 读操作不加锁,采用copyOnWrite的方式实现写操作

• 分区段加锁

• 无法做到

下面序列中,哪一种序列 不可能是一个二叉搜索树的后序遍历结果?

• 1,2,3,4,5

• 1,2,5,4,3

• 5,4,3,2,1

• 3,5,1,4,2

小数值1.5625的二进制表示是____。

• 101.1001

• 0.001

• 101.111

• 1.1001

有两个N*N的矩阵A和B,想要在PC上按矩阵乘法基本算法编程实现计算A*B。假设N较大,本机内存也很大,可以存下A、B和结果矩阵。那么,为了计算速度,A和B在内存中应该采用的存储方法是______。(按行存指先存储第一行,再第二行,直到最后一行;按列存指先存储第一列,再第二列,直到最后一列)

• A按行存,B按行存

• A按行存,B按列存

• A按列存,B按行存

• A按列存,B按列存

有n条随机的二进制流(n非常大),有n个接收器收集数据,遇到1就停止,并把之前收到的二进制传存储起来,最后0的个数大约有_______个。

• n

• n/2

• 2n

• 3n/2

下列叙述中正确的是____。

• 循环队列有队头和队尾两个指针,因此,循环队列是非线性结构

篇8:ebay实习生笔试题

1.写出a*(b-c*d)+e-f/g*(h+i*j-k)的逆波兰表达式

2.面向对象语言中public,proteced,private的区别

3.SAX和DOM的区别以及各自优缺点

4.进程和线程区别

篇9:ebay实习生笔试题

1.假设现有一个功能,用户点击一个按钮后就会自动发送一封邮件到用户的邮箱。现在

用户反映没有受到邮件。你怎么去发现并解决问题

2.用Java写一个Singleton类

篇10:ebay实习生笔试题

.2个有序List,请用Java写一个合并函数合并他们,返回一个有序List

public List Merge(List a,List b){

}

=====================================

SAX与DOM之间的区别

当你需要处理XML文档时,你的首要选择是使用DOM(文档对象模型)还是使用SAX(用于XML的简单API),即当前使用的两个主要的XML API。你可

以使用任何一种(或者在同一时间使用两种)来处理XML文档,然而DOM将文档载入到内存中处理,而SAX则相反,它可以检测一个即将到来的 XML

流,由此并不需要所有的XML代码同时载入到内存中。

选择DOM与SAX,与在一个数据库中的表单与视图之前选择一样:选择适合于当前实际情况的方法。如果你只是想简单地查看XML文档而不处理它

,那么请选择使用SAX。

SAX与DOM之间的区别

SAX与DOM之间有一些显著区别,包括:

DOM是复杂对象处理的首选,比如当XML比较复杂的时候,或者当你需要随机处理文档中数据的时候。SAX从文档的开始通过每一节点移动,以定

位一个特定的节点。

DOM为载入到内存的文档节点建立类型描述。最终,这些描述呈现了可容易横向移动、潜在巨大、树型结构。如果XML很冗长,DOM就会显示出无

法控制的胀大。例如,一个300KB的XML文档可以导致RAM或者虚拟内存中的3,000,000KB的DOM树型结构。通过比较就会发现,一个SAX文档根

本就没有被解构,它也没有隐藏在内存空间中(当然当XML流被读入时,会有部分文档暂时隐藏在内存中)。SAX就是一种“更轻巧的”技术──

它可以给你的系统带来更轻的负担。SAX相当于观看一场马拉松比赛,而DOM就好比邀请所有的比赛选手到家里参加晚餐。

所以,你如何选择SAX和DOM?如果你处理复杂的东西,比如高级XSLT转换,或者Xpath过滤,请选择使用DOM。如果你建立或者更改XML文档,你

也可以选择DOM。

相反,你可以使用SAX来查询或者阅读XML文档。SAX可以快速扫描一个大型的XML文档,当它找到查询标准时就会立即停止,然后再处理之。

在某些情况下,在一个方案中,最佳的选择是使用DOM和SAX处理不同的部分。例如,你可以使用DOM将XML载入到内存并改变它,然后通过从DOM

树中发送一个SAX流而转移最后的结果。

篇11:腾讯实习生笔试题

腾讯实习生笔试题

一、单项选择题

1) 给定3个int类型的正整数x,y,z,对如下4组表达式判断正确的选项()

Int a1=x+y-z; int b1=x*y/z;

Int a2=x-z+y; int b2=x/z*y;

Int c1=xz; int d1=x&y|z;

Int c2=x>>z<

a1一定等于a2

b1一定定于b2

c1一定等于c2

d1一定等于d2

2) 程序的完整编译过程分为是:预处理,编译,汇编等,如下关于编译阶段的编译优化的说法中不正确的是()

A)死代码删除指的是编译过程直接抛弃掉被注释的代码;

B) 函数内联可以避免函数调用中压栈和退栈的开销

For循环的循环控制变量通常很适合调度到寄存器访问

D)强度削弱是指执行时间较短的指令等价的替代执行时间较长的指令

3) 如下关于进程的面熟不正确的是()

A)进程在退出时会自动关闭自己打开的'所有文件

B) 进程在退出时会自动关闭自己打开的网络链接

C) 进程在退出时会自动销毁自己创建的所有线程

D)进程在退出时会自动销毁自己打开的共享内存

4) 计算表达式x6+4×4+2×3+x+1最少需要做()次乘法

A)3

B)4

C)5

D)6

5) SQL语言中删除一个表的指令是()

DROP TABLE

DELETE TABLE

DESTROY TABLE

REMOVE TABLE

7)某产品团队由美术组、产品组、client程序组和server程序组4个小组构成,每次构建一套完整的版本时,需要各个组发布如下资源,美术组想客户端提供图像资源(需要10分钟)

,产品组向client组合server提供文字内容资源(同时进行,10分钟),server和client源代码放置在不同工作站上,其完整编译时间均为10分钟切编译过程不依赖于任何资源,client程序(不包含任何资源)在编译完毕后还需要完成对程序的统一加密过程(10分钟)。可以请问,从要完成一次版本构建(client与server的版本代码与资源齐备),至少需要多少时间()

A)60分钟

B)40分钟

C)30分钟

D)20分钟

8)如下关于编译链接的说法错误的是()

A)编译优化会使得编译速度变慢

B) 预编译头文件可以优化程序的性能

C) 静态链接会使得可执行文件偏大

D)动态链接库会使进程启动速度偏慢

9)如下关于链接的说法错误的是()

A)一个静态库中不能包含两个同名全局函数的定义

B)一个动态库中不能包含两个同名全局函数的定义

C)如果两个静态库都包含一个同名全局函数,他们不能同时被链接

D)如果两个动态库都包含一个同名全局函数,他们不能同时被链接

10)某火车站要通过一条栈道(先进后出)来调换进入车站的列车顺序,若进站的列车顺序为A、B、C,则下列哪个出站顺序不可能?()

A)ABC

B)ACB

C)CAB

D)CBA

11)栈是一种智能在某一端插入和删除的特殊线性表,它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,若6元素为A、B、C、D、E、F出栈顺序为B、D、C、F、E、A,则S栈的最小容量为()

A)3

B)4

C)5

D)6

12)找工作的季节马上就到了,很多同学去图书馆借阅《面试宝典》这本书,现在图书馆外有6名同学排队,其中3名同学要将手中的《面试宝典》还至图书馆,有3名同学希望从图书馆中可以借到《面试宝典》,若当前图书馆内已无库存《面试宝典》,要保证借书的3名同学可以借到书,请问这6位同学有多少种排队方式()

A)60

B)120

C)180

D)360

13)若完全二叉树的节点个数为2N-1,则叶节点个数为()

A)N-1

B)2×N

C)2N-1

D)2N

14)排序算法的稳定是指,关键码相同的记录排序前后相对位置不发生改变,下面哪种排序算法是不稳定的()

A)插入排序

B)冒泡排序

C)快速排序

D)归并排序

15)下列说法中错误的是:()

A)插入排序某些情况下复杂度为O(n)

B)排序二叉树元素查找的复杂度可能为O(n)

C)对于有序列表的排序最快的是快速排序

D)在有序列表中通过二分查找的复杂度一定是O(n log2n)

16)在程序设计中,要对两个16K×16K的多精度浮点数二维数组进行矩阵求和时,行优先读取和列优先读取的区别是()

A)没区别

B)行优先快

C)列优先快

D)2种读取方式速度为随机值,无法判断

微软公司笔试面试题经验

微软研究院面试题目

五矿笔经小结

微软面试笔试试题大家谈

各大公司口号

面试指导手册

一道很多公司都会用的面试问答试题

JAVA笔试经验

普华笔试经验

十六道经典的招聘智力测试题

微软实习生笔试题
《微软实习生笔试题.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

【微软实习生笔试题(精选11篇)】相关文章:

名企精英们的跳槽经验2023-04-16

名企面试“秘笈”报道2023-04-30

经验之内容要求2022-05-17

腾讯实习生求职笔试面试经历2022-07-26

经典面试趣味笔试题2022-04-29

高校非计算机专业计算机基础教育的教学方法2023-12-04

IQ题笔试题2023-05-16

微软办公软件Office经典故障解决方法2022-12-20

网络it工程师工作总结范文2023-12-30

IQ 笔试题2023-03-01

点击下载本文文档