2015-8-29阿里校园招聘研发工程师笔试题


2015-8-29阿里校园招聘研发工程师笔试题

1. 某团队有2/5的人会写Java程序,有3/4的人会写C++程序,这个团队里同时会写Java和C++的至少有()人
A. 3  B. 4  C. 5  D. 8  E. 15  F. 20

2. 某团队负责人接到一个紧急项目,他要考虑在代号为ABCDEF这6个团队成员中的部分人员参加项目开发工作。人选必须满足一下各点:
AB两人中至少一个人参加
AD不能都去
AEF三人中要派两人
BC两人都去或都不去
CD两人中有一人参加
若D不参加,E也不参加
那么最后()参加紧急项目开发。
A. ECEF  B. AF  C. ECF  D. F  E. ABCF  F. ECDEF

 

3. 对立双方争夺一个价值为1的商品, 双方可以采纳的策略可以分为鸽子策略和鹰策略。如果双方都是鸽子策略,那么双方各有1/2的几率获得该物品;如果双方均为鹰策略,那么双方各有1/2的概率取胜,胜方获得价值为1的物品,付出价值为1的代价;如果一个为鸽子策略,一方为鹰策略,那么鹰策略获得价值为1的物品。在争夺结果出来之前,没人知道对方是鸽子策略还是鹰策略。当选择鸽子策略的人的比例是某一个值时,选择鸽子策略和选择鹰策略的预期收益是相同的。那么该值是:

A. 0.2  B. 0.4  C. 0.5  D. 0.7  E. 0.8 F. 以上都不对

 

4. 在小端机器中,如果

union X{
    int x;
    char y[4];
};

如果:

X a;

a.x=0x11223344; //16进制

则:

A. a.y[0]=11

B. a.y[1]=11

C. a.y[2]=11

D. a.y[3]=11

E. a.y[0]=22

F. a.y[3]=22

 

5. 在以下操作中,数组比线性表速度更快的是()

A. 原地逆序

B. 头部插入

C. 返回中间节点

D. 返回头部节点

E. 选择随机节点

 

6. Linux系统某个可执行文件属于root并且有setid, 当一个普通用户mike运行这个程序时,产生的进程的有效用户和实际用户分别是()

A. root mike  B. root root  C. mike root  D. mike mike  E. deamon mike  F. mike deamon

 

7. 有4个进程A、B、C、D,设它们依次进入就绪队列,因相差实际很短可视为同时到达。4个进程按轮转法分别运行11,7,2和4个时间单位,设时间片为1。四个进程的平均周转时间为()

A. 15.25  B. 16.25  C. 16.75  D. 17.25  E. 17.75  F. 18.25

 

8. 在一个双向循环链表中,指针p所指向的节点(非尾节点)之后插入指针s所指向的节点,其修改指针的操作是()

A. p->next=s; s->prev=p; p->next->prev=s; s->next=p->next;

B. p->next->prev=s; p->next=s; s->prev=p; s->next=p->next;

C. p->next->prev=s; s->prev=p; p->next=s; s->next=p->next;

D. s->prev=p; s->next=p->next; p->next->prev=s; p->next=s;

E. s->next=p->next; s->prev=p; p->next=s; p->next->prev=s;

 

9. 下列选项中,()是一个典型的TCP客户端(主动建立连接,主动关闭连接)

A. SYNC_SENT->ESTABLISHED->FIN_WAIT_1->FIN_WAIT_2->TIME_WAIT

B. SYNC_SENT->ESTABLISHED->FIN_WAIT_1->FIN_WAIT_2->CLOSE_WAIT

C. SYNC_SENT->SYNC_RCVD->ESTABLISHED->FIN_WAIT1->FIN_WAIT2

D. SYNC_RCVD->ESTABLISHED->CLOSE_WAIT->TIME_WAIT->LAST->ACK

E. SYNC_RCVD->ESTABLISHED->CLOSE_WAIT->TIME_WAIT->FIN_WAIT1

F. SYNC_SEND->ESTABLISHED->FIN_WAIT1->TIME_WAIT->CLOSE_WAIT

 

10. 已知一个二叉树的前序遍历结果是(ACDEFHGB), 中序遍历结果是(DECAHFBG), 请问后序遍历结果是()

A. HGFEDCBA

B. EDCHBGFA

C. BGFHEDCA

D. EDCBGHFA

E. BEGHDFCA

F. BGHFEDCA

 

11. 一个博物馆以每分钟20人的速度进入,平均每人待20分钟,问博物馆至少需要容纳()人

A. 100  B. 200  C. 300  D. 400  E. 500

 

12. 个数为50k的数列,需进行从小到大排序,数列特征基本逆序(多数数字从大到小,个别数字乱序),以下哪种排序算法在事先 不了解数列特征的情况下能大概率最优(不考虑空间限制)()

A. 冒泡排序  B. 改进冒泡排序  C. 选择排序  D. 快速排序  E.堆排序  F.插入排序

 

13. 在动态内存分配(C语言的malloc,C++的new),得到的存储区在内存中的()

A. 静态区  B.堆(heap)  C. 栈(stack)  D. 堆栈  E. 内核内存  F. 不确定

 

14. “村长”带着4对父子参加“爸爸去哪儿”第三季第二站某村庄的拍摄。村里为了保护小孩不被拐走有个千年的规矩,那就是吃饭的时候小孩左右只能是其他小孩或者自己的父母。那么4对父子在圆桌上共有几种坐法。(旋转一下,每个人面的的方向变更后算是一种新的坐法)()

A. 144  B.240  C. 288  D.480  E. 576  F. 960

 

15. 每台物理计算机可以虚拟出20台虚拟机,假定一台虚拟机发生故障当且仅当它所宿主的物理机发生故障。通过5台物理机虚拟出的100台虚拟机,那么关于这100台虚拟机的故障的说法正确的是()

A. 单台虚拟机的故障率高于单台物理机的故障率

B. 这100台虚拟机发生故障是彼此独立的

C. 这100台虚拟机单位时间内出现故障的个数高于100台物理机单位时间内出现故障的个数

D. 无法判断这100台虚拟机和100台物理机哪个更可靠

E. 如果随机选出5台虚拟机组成集群,那么这个集群的可靠性和5台物理机的可靠性相同

F. 可能有一段时间只有1台虚拟机发生故障

 

16. 下列C代码中,不属于未定义行为的有()

A. int i=0;i=(i++);

B. char *p="hello"; p[1]='E';

C. char *p="hello"; char ch=*p++;

D. int i=0;printf("%d %d\n", i++, i—);

E. 都是未定义行为

F. 都不是未定义行为

17. 带头节点的单链表head为空的判断条件是()

A. head==null

B. head->next==null;

C. head->next==head;

D. head!=null;

E. *head==null;

F. *(head->next)==null;

 18. 甲乙两路发车间隔均为10分钟的公交车发车时刻分钟数个位分别为1和9,那么对于一个随机到达的乘客,ta乘坐甲车的概率为

A. 0.1  B.0.2  C. 0.3  D. 0.4  E. 0.5  F. 0.9

19. 20. 都忘记了

简答题

1. 给定一个query和一个text,均由小写字母组成。要求在text中找出以同样顺序连续出现在query中最长连续字母序列的长度。例如,query为“acbac”,text为“acaccbabb”,那么text中的“cba”为最长的连续出现在query中的字符序列,因此,返回结果应该为其长度3。请注意程序效率。

2. 写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函数返回这棵树中相差最大的两个节点间的差的绝对值。请注意程序效率。

3. Java中wait方法和sleep方法有什么区别。

本文永久更新链接地址:

相关内容