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 plaincopy
  1. void main()
  2. {
  3. int i = 11;
  4. int const *p = &i;
  5. p++;
  6. printf("%d",*p);
  7. }

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 plaincopy
  1. int f()
  2. {
  3. int *a = new int(3);
  4. return *a;
  5. }

B、

[cpp] view plaincopy
  1. int *f()
  2. {
  3. int a[3] = {1,2,3};
  4. return a;
  5. }

C、

[cpp] view plaincopy
  1. vector<int> f()
  2. {
  3. vector<int> v(3);
  4. return v;
  5. }

D、

[cpp] view plaincopy
  1. void f(int *ret)
  2. {
  3. int a[3] = {1,2,3};
  4. ret = a;
  5. return ;
  6. }

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<y))
B、y^(x^y)
C、x^(x^y)
D、(x^y)^(y^x)

E、None of above

x<y的时候,-(x<y)即-1的补码形式就是全1(111111),(x^y)&-(x<y)== x^y。x>y的时候,-(x<y)即0的补码形式就是全0(000000),(x^y)&-(x<y)== 0

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 plaincopy
  1. class Test
  2. {
  3. public:
  4. ____  int a;
  5. ____  int b;
  6. public:
  7. Test::Test(int _a , int _b) : a( _a )
  8. {
  9. b = _b;
  10. }
  11. };
  12. int Test::b;
  13. int main(void)
  14. {
  15. Test t1(0 , 0) , t2(1 , 1);
  16. t1.b = 10;
  17. t2.b = 20;
  18. printf("%u %u %u %u",t1.a , t1.b , t2.a , t2.b);
  19. return 0;
  20. }

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 plaincopy
  1. char *f(char *str , char ch)
  2. {
  3. char *it1 = str;
  4. char *it2 = str;
  5. while(*it2 != '\0')
  6. {
  7. while(*it2 == ch)
  8. {
  9. it2++;
  10. }
  11. *it1++ = *it2++;
  12. }
  13. return str;
  14. }
  15. int main(void)
  16. {
  17. char *a = new char[10];
  18. strcpy(a , "abcdcccd");
  19. cout<<f(a,'c');
  20. return 0;
  21. }

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 plaincopy
  1. int power(int b , int e)
  2. {
  3. if(e == 0)
  4. return 1;
  5. if(e % 2 == 0)
  6. return power(b*b , e/2);
  7. else
  8. return b * power(b*b , e/2);
  9. }

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 plaincopy
  1. #include<iostream>
  2. using namespace std;
  3. struct Item
  4. {
  5. char c;
  6. Item *next;
  7. };
  8. Item *Routine1(Item *x)
  9. {
  10. Item *prev = NULL,
  11. *curr = x;
  12. while(curr)
  13. {
  14. Item *next = curr->next;
  15. curr->next = prev;
  16. prev = curr;
  17. curr = next;
  18. }
  19. return prev;
  20. }
  21. void Routine2(Item *x)
  22. {
  23. Item *curr = x;
  24. while(curr)
  25. {
  26. cout<<curr->c<<" ";
  27. curr = curr->next;
  28. }
  29. }
  30. int main(void)
  31. {
  32. Item *x,
  33. d = {'d' , NULL},
  34. c = {'c' , &d},
  35. b = {'b' , &c},
  36. a = {'a' , &b};
  37. x = Routine1( &a );
  38. Routine2( x );
  39. return 0;
  40. }

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

2012年微软校招实习生笔试题(2012.4.7)相关推荐

  1. 微软2012实习生笔试题及答案(望讨论)

    微软的实习生笔试题,不是太难,算法的题好多,但是很多答案都不确定,欢迎大家讨论答案~ 答案:1.C(每迭代一次至少一个确定)  2.AC 3.ACE 4.A 5.C 6.C 7.D 8. AD 9.B ...

  2. 校招笔试C语言,校招c ++笔试题汇总

    ①链表反转 单向链表的反转是一个经常被问到的一个面试题,也是一个非常基础的问题, 最容易想到的方法遍历一遍链表,利用一个辅助指针,存储遍历过程中当前指针指向的下一个元素,然后将当前节点元素的指针反转后 ...

  3. 头条2020届实习生笔试题

    头条2020届实习生笔试题 一卷 编程题: 输入某年某月某日,判断这一天是这一年的第几天? // 判断是否为闰年function isRun(a) {return a % 4 == 0 &&a ...

  4. 计算机校招软件测试笔试题,校招软件测试笔试题

    校招软件测试笔试题 1. 假设把整数关键码K散列到N个槽列表,以下哪些散列函数是好的散列函数 A: h(K)=K/N; B: h(K)=1; C: h(K)=K mod N; D: h(K)=(K+r ...

  5. 小红书2020校招数据分析笔试题卷四 解析

    小红书2020校招数据分析笔试题卷四 解析 单选题 多选题 填空题 简答题 题目来自小红书2020校招数据分析笔试题卷四 单选题 如果在小红书商城中某一商户给一产品定价,如果按照全网最低价500元定价 ...

  6. 记 随手科技2020届实习生笔试题(Java开发工程师)笔试题

    2020届实习生笔试题(Java开发工程师) 一.选择题(共6题,每小题5分,满分30分) 1 2 3 4 5 6 总分 B B A C B C 1.下列排序算法中,初始数据集合对排序性能无影响的是( ...

  7. 富士康计算机类笔试题,富士康2021校招技术类笔试题

    富士康2021校招技术类笔试题 发布时间:2021-03-02 富士康科技集团是台湾鸿海精密集团在大陆投资兴办的高新科技企业.下面就由第一范文网小编为大家介绍一下富士康20xx校招技术类笔试题的文章, ...

  8. 华为校招java笔试题库_华为校招Java笔试题库,看你会不会做

    1.在java中如果声明一个类为final,表示什么意思? 答:final是最终的意思,final可用于定义变量.方法和类但含义不同,声明为final的类不能被继承. 2.父类的构造方法是否可以被子类 ...

  9. 2022腾讯前端实习生笔试题与部分详细题解

    2022腾讯前端实习生笔试题与部分详细题解 前言与详细题目和个人题解 一.根据给定深度实现数组的扁平化 二.股票买入卖出收益最大化 欢迎交流和指正 前言与详细题目和个人题解 4月24晚举行的笔试,我做 ...

最新文章

  1. loj2058 「TJOI / HEOI2016」求和 NTT
  2. JAVA高级特性--自动拆箱-装箱,枚举类型
  3. 命令行以及git基础使用
  4. 乐观锁与悲观锁及应用举例
  5. 返回指针_C语言面试中的问题指针和引用的使用场景?
  6. mysql 拷贝安装_Mysql的安装和主从复制
  7. EF sqlite3报错 System.Data.Entity.Core.EntityException: 在提供程序连接上启动事务时出错。有关详细信息,请参阅内部异常。...
  8. 【洛谷2926/BZOJ1607】[USACO08DEC]Patting Heads拍头(筛法)
  9. 【java进阶之路】(Java基础篇)[扩展]深入解析String.intern()及字符串常量池问题
  10. 平方根的计算(二分逼近、牛顿拉普生法)
  11. 第二阶段团队站立会议08
  12. 什么?你的私钥泄漏了?
  13. 【Oracle学习笔记】索引
  14. 《HiWind企业快速开发框架实战》(2)使用HiWind创建自己的项目
  15. android 数字 余额宝,仿余额宝数字滚动增长的效果实现
  16. HRBUST 1212 乘积最大
  17. 3D建模学习对于电脑配置要求高不高?显卡内存等全方面解析,小白福音
  18. CentOS7(图显)安装最新版本NVIDIA 显卡驱动
  19. freeswitch-PSTN
  20. Win10 如何将FAT32格式磁盘不用格式化无损转化为NFTS格式

热门文章

  1. 【LeetCode 1000】 Minimum Cost to Merge Stones
  2. 学习自旋电子学的笔记01:微磁模拟软件OOMMF的教程(中文版)17-17.3章
  3. 工业级成熟港航人工智能产品行业第一,中国上海人工智能独角兽中集飞瞳巅峰AI产品与核心技术处于全球顶尖水平智能港口智能船公司智能化
  4. 单K210模块低成本实现21电赛题送药小车
  5. 联想rd640服务器装系统,RD640操作系统安装手册.pdf
  6. 豆芽菜推动大航海—不起眼的致胜因素之一
  7. macbook使用指南
  8. Vjudge B - Grandpa is Famous
  9. 熵(entropy)、交叉熵(cross-entropy)
  10. linux用什么剪辑视频教程,极简主义:Linux视频剪辑利器Viedo Trimmer