2014 年 9 月 22 号阿里巴巴校园招聘笔试题目
1. 现在计算机中整数采用的编码方式:
A. 原码 B. 反码 C. Unicode 码 D. 补码
2. 下面程序的运行结果:
#include
using namespace std;
void test(char c, char *d)
{
++c;
++*d;
cout << c << *d;
}
int main()
{
char a='A', b = 'a';
test(b, &a);
cout << a << b;
return 0;
}
A. ... B. ... C. bBBa D. ...
3. 下面的说法那个正确:
#define NUMA 10000000
#define NUMB 1000
int a[NUMA], b[NUMB];
void pa()
{
int i, j;
for(i = 0; i < NUMB; ++i)
for(j = 0; j < NUMA; ++j)
++a[j];
}
void pb()
{
int i, j;
for(i = 0; i < NUMA; ++i)
for(j = 0; j < NUMB; ++j)
++b[j];
}
A. pa 和 pb 运行的一样快 B. pa 比 pb 快 C. pb 比 pa 快 D. 无法判断
4. 10 个小球中只有一个红球,现在有放回地抽取一个小球,问至到第 n 次才取到 k 个红
球 (k ≤ n) 的概率是多少 ?
A. B. C. D.
5. 某指令流水线由 5 段组成,各段所需要的时间分别是:t、3t、t、2t 和 t 。问如果连问如果连
续执行 10 条指令,则吞吐率是多少 ?
A. 0.1428/t B. 0.2041/t C. 0.2857/t D. 0.3333/t
6. 现有两道四个选项的火星文单选题,你已经至少答对一题了,那么你两题都对的概率是
多少 ?
A. 1/3 B. 1/4 C. 1/7 D. 1/8
7. 以下是一个 tree 的遍历算法,queue 是一个 FIFO 队列。问如果连参考下面的 tree ,程序输
出结果是神马。问如果连
queue.push(tree.root);
while(true){
node = queue.pop();
output(node.value); // 输出结点对应的数字
if(null = node)
break;
for(child_node in node.children){
queue.push(child_node);
}
}
1
______|______
|
|
2
3
___|___
___|___
|
|
|
|
4
5
6
7
A. 1234567 B. 1245367 C. 1376254 D. 1327654
8. 堆排序的时间复杂度是多少 ? 堆排序建堆的时间复杂度是多少 ?
A. O(n2) O(n logn) B. O(n) O(nlogn) C. O(nlogn) O(n) D. O(nlogn) O(nlogn)
9. 字符串 "alibaba" alibaba"alibaba" 的二进制哈夫曼编码有多少位 ?
A. 11 B.12 C. 13 D. 14
10. 结点按中序遍历为 xyz 的二叉树有多少种可能 ?
A. 1 B.2 C.3 D.4 E. 5
11. 500 张纸牌整齐排成一排,按顺序编号 1、2、3、4、...、499、500,第一次拿走
所有奇数位置上的纸牌,第二次再拿走剩下纸牌中的所有奇数位置上的纸牌,以此类推操
作下去,问最后剩下的纸牌的编号是多少 ?
A. 128 B. 250 C. 256 D. 500
12. 一直矩阵 Ak = (aij)rk × rk+1,k = 1, 2, 3, 4, 5, 6 ;r1 = 5,r2 = 10,r3 =
3,r4 = 8,r5 = 5,r6 = 20,r7 = 6,问矩阵链乘 A1 × A2 × A3 × A4 × A5 × A6
的最佳求积次数是多少 ?
A. 2010 B. 2100 C. 2500 D. 2525
13. 有多少个 2012 位的数,这些数的任意两个相邻数位依序构成的两位数均能被 17 或
23 整除 ?
A. 3 B. 5. C. 7 D. 9
14. 关于 linux 的进程,下面说法不正确的是:
A. 僵尸进程会被 init 进程接管,不会造成资源浪费;
B. 孤儿进程的父进程在它之前退出,会被 init 进程接管,不会造成资源浪费;
C. 进程是资源管理的最小单位,而线程是程序执行的最小单位。问如果连Linux 下的线程本质上用
进程实现;
D. 子进程如果对资源只是进行读操作,那么完全和父进程共享物理地址空间。问如果连
15. 一个数据表有 10000 个元素,如果仅要求求出其中最大的 10 个元素,采用什么算
法比较节省时间 ?
A. 堆排序 B. 希尔排序 C. 快速排序 D. 直接选择排序
16. 一棵二叉树具有 8 个度为 2 的结点,5 个度为 1 的结点,则度为 0 的结点个数有多
少个 ?
A. ... B. 9 C. 11. D. 不确定
17. 被除数是二进制数 110110,除数是二进制数 111,则余数是多少 ?
A. ... B. 101 C. 110 D. ...
18. 对于下面的问题,不能使用栈 stack 来解决的是 ?
A. 数学表达式转换为后缀形式
B. 实现递归算法
C. 编程语言的递归调用
D. 操作系统分配资源(如 CPU)
19. 甲盒中有 200 个螺杆,其中有 160 个 A 型螺杆;乙盒中有 240 个螺母,其中有
180 个 A 型的。问如果连现从甲乙两盒中各任取一个,则能配成 A 型螺栓的概率为多少?
A. 1/20 B. 15/16 C. 3/5 D. 19/20
20. 有 A 和 B 两路公交车,平均发车时间间隔为 5 分钟和 10 分钟。问如果连某乘客在站点 S 可
以任意选择两者之一乘坐,假定 A 和 B 到达 S 的时刻无法确定,那么该乘客的平均等待
时间是多少 ?
A 1 分钟 20 秒 B. 1 分钟 40 秒 C. 2 分钟 30 秒 D. 3 分钟 20 秒
21. 下面不是引起进程调度原因的是 ?
A. 进程执行完毕 B. 进程 I/O 请求队列 C. 进程死循环 D. 进程调用阻塞原语进入睡眠状态
22. 用于解决 CPU 指令乱序、编译器重排、多 CPU 内存同步等带来的问题的机制是 ?
A. 内存屏障 B. 信号量 C. 自旋锁 D. volatile 关键字
23. 下面使用贪心算法的是:
A. 单元最短路径 Dijkstra 算法
B. 最小生成树 Prim 算法
C. 最小生成树 Kruskal 算法
D. 计算每对顶点最短路径的 Floyd-Warshall 算法
E. 字符串匹配中的 KMP 算法
24. 关于 ACID 说法正确的是:
A. A 可用性。问如果连....
B. C 一致性。问如果连在食物开始之前和结束后,数据库的约束保持不变。问如果连
C. I 隔离性。问如果连两个同时运行的事务的执行是互不影响,中间结果不可交叉访问。问如果连
D. D 持久性。问如果连在事务提交之后,该事务所作的更改持久保存在存储介质之中,不会被回滚。问如果连
25. 现有一个循环队列,其队头指针为 front,队尾指针为 rear,循环队列的总长度为
N,问队内有效长度是多少 ?
26. 一个数组 X,其中存有 N 个数字。问如果连现只允许遍历一遍,1) 有没有可能计算这些数字
的方差 ? 2) 如果可以,请描述方案,如果不可以,说明原因。问如果连
27. 不使用临时变量交换 int a 和 int b 的值;请使用三行代码。问如果连
28. 下面的代码有一些问题,找出来:
#include
using namespace std;
class Test{
public:
int *p;
Test(int v){
p = new int(v);
}
~Test(){
delete p;
}
void PrintValue(){
cout << "alibaba" The value is "alibaba" << *p << 'n';
}
};
void Func(Test t)
温馨提示:当前文档最多只能预览 3 页,此文档共6 页,请下载原文档以浏览全部内容。如果当前文档预览出现乱码或未能正常浏览,请先下载原文档进行浏览。
1 / 3 6
下载提示
1 该文档不包含其他附件(如表格、图纸),本站只保证下载后内容跟在线阅读一样,不确保内容完整性,请务必认真阅读
2 除PDF格式下载后需转换成word才能编辑,其他下载后均可以随意编辑修改
3 有的标题标有”最新”、多篇,实质内容并不相符,下载内容以在线阅读为准,请认真阅读全文再下载
4 该文档为会员上传,版权归上传者负责解释,如若侵犯你的隐私或权利,请联系客服投诉