2014-阿里校招笔试题目 

2014-阿里校招笔试题目 

ID:20370485

大小:110.50 KB

页数:16页

时间:2018-10-09

2014-阿里校招笔试题目 _第1页
2014-阿里校招笔试题目 _第2页
2014-阿里校招笔试题目 _第3页
2014-阿里校招笔试题目 _第4页
2014-阿里校招笔试题目 _第5页
资源描述:

《2014-阿里校招笔试题目 》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、2014-阿里校招笔试题目刖目我明天上午9点还有面试,今天突然看到某大牌IT公司笔试题目,必须做一下了题目一、单选题1.假设把整数关键码K散列到N个槽列表,以下哪些散列函数是好的散列函数A:h(K)=K/N;B:h(K)=l;C:h(K)=KmodN;D:h(K)=(K+rand(N))modN,rand(N)返回0到N_1的整选择C,解释:开始纠结于C和D,但是hash的特性在于常数的时间执行插入、删除和查找操作,用D作为hash函数无法满足该条件,用C产生碰撞可以用链接法解决冲突,感谢zdwl2242的纠正2.下面排序算法中,初

2、始数据集的排列顺序对算法的性能无影响的是:A:堆排序B:插入排序C:冒泡排序D:快速排序选择A,解释:(1)堆排序的时间复杂度一直都是O(nlogn),不稳定(2)插入排序在初始有序情况下,时间复杂度为0(n),平均时间复杂度为0(rf2),稳定排序(3)冒泡排序在初始有序的情况下,增加交换标示flag可将时间复杂度降到0(n),稳定排序(4)快速排序在初始有序的情况下,可能会退化到0(rf2),不稳定排序1.下面说法错误的是:A:CISC计算机比RISC计算机指令多B:在指令格式中,采用扩展操作码设计方案的目的是为了保持指令字长不

3、变而增加寻址空间C:增加流水线段数理论上可以提高CPU频率D:冯诺依曼体系结构的主要特征是存储程序的工作方式选择B,解释(1)CISC复杂指令集,RISC精简指令集,从名字上就可以得出A正确(2)保持指令字长度不变而增加指令操作的数量(3)看样子都觉得正确(4)冯诺依曼体系结构的主要特点:存储程序控制(要求计算机完成的功能,必须事先编制好相应的程序,并输入到存储器中,计算机的工作过程是运行程序的过程);程序由指令构成,指令和数据都用二进制表示;指令由操作码和地址码构成;机器以cpu为中心2.不属于冯诺依曼体系结构必要组成部分是:A:

4、CPUB:CacheC:RAMD:ROMB,解释:冯诺依曼体系结构必要组成部分:运算器、控制器、存储器、输入设备、输出设备,Cache属于缓存了1.一个栈的入栈序列式ABCDE则不可能的出栈序列是:A:DECBAB:DCEBAC:ECDBAD:ABCDEC,不解释.你认为可以完成编写一个C语言编译器的语言是:A:汇编B:C语言C:VBD:以上全可以D,解释:其实你学好编译原理用什么语言都能写出来7.关于C++/JAVA类中的static成员和对象成员的说法正确的是:A:static成员变量在对象构造时候生成B:static成员函数在

5、对象成员函数中无法调用C:虚成员函数不可能是static成员函数D:static成员函数不能访问static成员变量C,解释:虽然博主主要以php和c为主,php也能面向对象,我来简单说明一下。(l)static成员变量可以直接定义,例如publicstatci$a=10;所以A错(2)在对象成员函数里可以通过类名::static函数名的方法调用,我的项目中超过静态方法(4)同样道理,类名::static成员变量名,这也是访问static成员变量唯一的方法(3)是正确的,虽然我都不知道什么是虚函数,排除法可以完成此时进程的状态将:A

6、:从就绪变为运行B:从运行变为就绪C:从运行变为阻塞D:从阻塞变为就绪C,解释:I/O事件让进程从running->waitting10:下面算法的时间复杂度为:Intf(unsignedintn){If(n==01

7、n==l)Returnl;ElseReturnn^f(n-1);}A:0(l)B:0(n)C:0(N*N)D:0(n!)B,解释:没啥好解释的II从1开始,每个操作可以选择对n加1或者对n加倍。若想获得整数2017,最少需要多少个操作。A:18B:24C:21D;不可能A,解释:数学方法_〉从2017倒推,奇数减一,偶

8、含除2,编程实现_〉是一个明显的bfs题目,编程实现为18共享一下自己的bfs代码:#include#includettdefineFINAL2017#defineMAX25typedefstructnum{intd,time:}num:typedefstructqueue{intfront,rear,count:numdata[10000000]:}queue;voidenQueue(queue*q,numd){q->data[q->rear++]=d;q->count++;}numdeQueue(queue^q){numres;

9、res=q-〉data[q-〉front++];q-〉count—:returnres:}intmain(void){intflag二0;numbt,one,two,s;=2;=l;queue*q=(queue*)malloc(siz

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。