您的位置:百味书屋 > 试题答案 > 2016阿里巴巴实习生(移动客户端)在线笔试题 正文

2016阿里巴巴实习生(移动客户端)在线笔试题

2016-10-20 12:24:38 来源网站:百味书屋

篇一:2014阿里巴巴实习生(移动客户端)在线笔试题

时间:2014年3月29日

注:贴的答案,仅供参考,是博主自己的答案

1.2个人,一人只说真话,一人只说假话,如何只问其中某个人一句话,就分辨出谁是说真话的,谁是说假话的?______。

A.问任何一人:你是说真话的,对吗

B.指着其中一人,问另一人:他是说真话的,对吗

C.指着其中一人,问另一人:他是说假话的,对吗

D.做不到

B,逻辑题,多想想应该能想的通

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

A.ps

B.cd

C.mv

D.ls

D,这估计是整套题最简单的一题,ls

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

A.只对写操作加锁,不对读操作加锁

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

C.分区段加锁

D.无法做到

C,这题不会,乱蒙的

4.下面关于队列和栈的描述正确的是______。

A.栈是先进先出的数据结构

B.队列是先进先出的数据结构

C.栈内元素可以随机访问

D.队列内的元素可以随机访问

B,学过数据结构的都知道

5.运行的程序总要与内存进行交互。内存作为操作系统中的重要资源,对内存的分配和释放进行管理是一项非常重要的工作,以下说法中错误的是 ______。

A.内存泄露是内存管理中的常见问题

B.悬挂引用指的是对某个对象的应用实际上指向一个错误的内存地址

C.在C、C++等系统语言中,有自动的内存管理机制,不需要考虑内存管理的问题

D.程序的动态性越强,内存管理就越重要,内存分配程序的选择也就更重要

C,应该是C,有点不确认

6.某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间

的 缓存时间)分别是90ns、80ns、70ns和60ns,则该计算机的CPU时钟周期至少是____。

A.90ns

B.80ns

C.70ns

D.60ns

A

7.下列代码的输出结果是

int i=-1;

unsigned j=1;

if (i<j)

printf(“(i<j)成立\n”);

else

printf(“(ii)

printf(“(j>i)成立\n”);

else

printf(“(j>i)不成立\n”);

A.(ii)成立

B.(ii)不成立

C.(ii)成立

D.(ii)不成立

D,在线笔试,运行后得到结果

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

A.45231

B.42351

C.12345

D.54321

A

9.在二进制数据中,小数点向右移一位,则数据______。

A.除以10

B.除以2

C.乘以2

D.乘以10

C

10.时间片调度属于____,多线程分别绑定CPU属于____。

A.并发,并发

B.并发,并行

C.并行,并行

D.并行,并发

B

11对于A、B两种排队方式,说法正确的是_______。

A.方式A效率更高

B.方式B效率更高

C.当排队的任务中有长耗时任务且比例较低时,方式B更具优势

D.都不正确

C

12.设一棵二叉树中有3个叶子节点,有8个度为1的节点,则该二叉树中总的节点数为______。

A.12

B.13

C.14

D.15

C

篇二:阿里巴巴 2015 2014年移动客户端开发在线笔试题

阿里巴巴 2015 移动客户端开发 在线笔试题

卷首语:该试卷共有两部分构成:必做题,20道单选题, 40分钟;附加题,3道大题,80分钟;共计120分钟。

一、必做题部分

1、

选第4个

2、

选第4个

3、

答案选的第三个 不确定

4、程序出错在什么阶段______?

int main(void)

{

cout<< “welcome to taobao"<<endl;

}

预处理阶段出错

编译阶段出错

汇编阶段出错

链接阶段出错

运行阶段出错

程序运行正常

答案选预处理阶段出错

5、下列描述中,唯一正确的是______。

本题没有正确选项

本题有多个正确选项

D和E都不正确

B和C有一个正确

C不正确

E和F有一个正确

6、某足球队有四名外援,分别来自巴西、荷兰、意大利和美国。他们分别擅长前锋、后卫或守门,其中:

① 美国外援单独擅长守门;

② 意大利外援不擅长前锋;

③ 巴西外援和另外某个外援擅长相同的位置;

④ 荷兰外援擅长的位置和巴西外援不同。

以上条件可以推出巴西外援擅长的位置是______。

前锋

守门

后卫

前锋或守门

后卫或守门

前锋或后卫

答案选择后卫

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

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

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

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

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

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

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

答案选择第三个

8、用6块1×2的完整瓷砖,铺满2×6的地面,一共有______种不同的铺法(不允许将瓷砖划分成小块)。

13

15

22

24

25

26

答案选13

9、一个函数定义的返回值是float,它不能在

return语句中返回的值的类型是:______。

char

int

float

long

double

以上皆可以

答案选double

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

root mike

root root

mike root

mike mike

deamon mike

mike deamon

11、在32位操作系统中,下列类型占用8个字符的为______。

short int

int C long

unsigned int

long long

char

int

答案选择 int

12、关于IP地址下列说法错误的是______。

IP地址采用分层结构,它由网络号与主机号两部分组成

根据不同的取值范围IP地址可以分为五类

202.112.139.140属于B类地址

每个C类网络最多包含254台主机

IPv6采用128位地址长度

A类,B类和C类地址为内部私有地址

13、设m和n都是int类型,那么以下for循环语句,______。

for(m=0,n=-1;n=0;m++,n++)n++;

循环体一次也不执行

循环体执行一次

是无限循环

有限次循环

循环结束判断条件不合法

运行出错

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

HGFEDCBA

EDCHBGFA

BGFHEDCA

EDCBGHFA

BEGHDFCA

BGHFEDCA

15、在一个请求页式存储管理中,一个程序的页面走向为3、4、2、1、4、5、3、4、5、1、2,并采用LRU算法。设分配给该程序的存储块数S分别为3和4,在该访问中发生的缺页次数F是______。

S=3,F=6; S=4,F=5

S=3,F=7; S=4,F=6

S=3,F=8; S=4,F=5

S=3,F=8; S=4,F=7

S=3,F=10; S=4,F=8

S=3,F=11; S=4,F=9

16、中关村电子城某卖手机的店铺给客人报价,如果按照底价500元(成本价)报出,那么客人就一定会选择在该店铺购买;价格每增加1元,客人流失的可能性增加1%。那么该店铺给客人报出的最优价格是:______?

500元

510元

520元

530元

540元

以上都不对

17、在一个童话世界里,任意两个人之间要么是朋友关系,要么是敌人关系,不存在其他关系及没有关系的情况。并且,如果A和B是朋友关系,B和C是朋友关系,那么A和C必然是朋友关系。那么关于这个童话世界中的人群的说法错误的是:______?

可能只有1个人群,这个人群内部是朋友关系。

可能有2个人群,人群内部是朋友关系,人群之间是敌人关系。

可能有3个及以上个人群,人群内部是朋友关系,人群之间是敌人关系。 如果存在多个人群,并且人群内部是朋友关系,人群之间是敌人关系,那么这些人群必然是差不多大小的。

选项B中的情况可以是其中一个人群只有一个人,另外一个人群可以由很多人。 这样一个世界里朋友关系是比较不容易发生变化的。

18、针对以下代码,const char str1[] = "abc";

const char str2[] = "abc";

const char *p1 = "abc";

const char *p2 = "abc";判断下列说法哪个是正确的:______。

str1和str2地址不同,P1和P2地址相同。

str1和str2地址相同,P1和P2地址相同。

str1和str2地址不同,P1和P2地址不同。

str1和str2地址相同,P1和P2地址不同。

4个地址都相同

篇三:2016年阿里巴巴校园实习生招聘笔试题及答案

2016年阿里巴巴校园实习生招聘c++研发工程师答案[最后一个程序设计题的实现]

#include<iostream>

#include<string>

#include<vector>

#include<set>

using namespace std;

//类C表示原料类

class C{

public:

string cname;

public:

C(string cname){

this->cname=cname;

}

friend ostream& operator<<(ostream&count,C*cptr){

cout<<cptr->cname<<endl;

return count;

}

};

//类B表示半成品类

class B{

public:

string bname;

vector<B*> bbr;

vector<C*> bcr;

set<B*>*sbptr;

set<C*>*scptr;

public:

B(string bname){

this->bname=bname;

sbptr=new set<B*>();

scptr=new set<C*>();

}

friend ostream& operator<<(ostream&count,B*bptr){

cout<<bptr->bname<<endl;

return count;

}

//输出所有的B依赖的半成品

void listBptr(set<B*>*sbptr){//假设该函数可以列出所有半成品

if(bbr.size()>0){

for(auto bptr:bbr){

sbptr->insert(bptr);

bptr->listBptr(sbptr);

}

}

}

//获取所有B的依赖的半成品

void getAllBptr(){

listBptr(sbptr);

}

void listAllBptr(){

getAllBptr();

cout<<bname<<"依赖的半成品有:"<<endl;

for(auto t:*sbptr){

cout<<t->bname<<endl;

}

}

//输出所有的B依赖的原料

void listCptr(set<C*>*cbptr){

if(bcr.size()>0){

for(auto t:bcr){

cbptr->insert(t);

//cout<<"原料名称:"<<t->cname<<endl;}

}

if(bbr.size()>0){

for(auto t:bbr){

t->listCptr(cbptr);

}

}

}

//获取所有B的原料

void getAllCptr(){

listCptr(scptr);

}

void listAllCptr(){

getAllCptr();

cout<<bname<<"依赖的所有原料有:"<<endl;

for(auto t:*scptr){

cout<<t->cname<<endl;

}

}

//插入一件依赖的半成品

void addBptr(B* bptr){

bbr.push_back(bptr);

}

//插入一件依赖的原料

void addCptr(C*cptr){

bcr.push_back(cptr);

}

//判断一件半成品是否在依赖中

bool isBptrIn(B*bptr){

for(auto t:*sbptr){

if(bptr==t){

return true;

}

}

return false;

}

//判断一件原料是否在依赖中

bool isCptrIn(C*cptr){

for(auto t:*scptr){

if(cptr==t){

return true;

}

}

return false;

}

};

//类A表示产品

class A{

public:

string aname;

vector<B*> abr;

vector<C*> acr;

set<B*>abptr;

set<C*>acptr;

public:

A(string aname){

this->aname=aname;

}

friend ostream& operator<<(ostream&count,A*aptr){ cout<<aptr->aname<<endl;

return count;

}

//输出所有的A依赖的半成品

void listBptr(){

cout<<"成品依赖的半成品有:"<<endl;

for(auto t:abr){

abptr.insert(t);

}

for(auto bptr:abr){

bptr->getAllBptr();//是否需要?

for(auto tt:*(bptr->sbptr)){

abptr.insert(tt);

}

}

for(auto t:abptr){

cout<<t->bname<<endl;

}

}

//输出所有的A依赖的原料

void listCptr(){

cout<<"成品依赖的原料有:"<<endl;

for(auto cptr:acr){

acptr.insert(cptr);

}

for(auto bptr:abr){

bptr->getAllCptr();//是否需要?

for(auto tt:*(bptr->scptr)){

acptr.insert(tt);

}

}

for(auto t:acptr){

cout<<t->cname<<endl;

}

}

//插入一件依赖的半成品

void addBptr(B* bptr){

abr.push_back(bptr);

}

//插入一件依赖的原料

void addCptr(C*cptr){

acr.push_back(cptr);

}

//判断一件半成品是否在依赖中

bool isBptrIn(B*bptr){

for(auto t:abr){

if(t->isBptrIn(bptr)){

return true;

}

}

return false;

}

//判断一件原料是否在依赖中

bool isCptrIn(C*cptr){

for(auto t:acr){

if(cptr==t){

return true;

}

}

for(auto t:abr){

if(t->isCptrIn(cptr)){

return true;

}

}

return false;

}

};

int main()

{

C a("原料a"),b("原料b"),c("原料c"),d("原料d"),e("原料e");

B f("半成品f"),g("半成品g"),i("半成品i");

A h("产品h");

f.addCptr(&a);f.addCptr(&b);f.addCptr(&c);

f.listAllCptr();

g.addCptr(&b);g.addCptr(&c);g.addCptr(&d);

g.listAllCptr();

i.addBptr(&f);

i.addBptr(&g);

//f.addBptr(&g);

//f.listAllBptr();

//需要避免产生回环递归

//g.addBptr(&f);

//g.listAllBptr();


2016阿里巴巴实习生(移动客户端)在线笔试题》出自:百味书屋
链接地址:http://www.850500.com/news/6880.html
转载请保留,谢谢!
相关文章
推荐范文