阿里巴巴校园招聘笔试试题-软件研发工程师+答案[ww.com]

上传人:徐皓 文档编号:113791390 上传时间:2019-11-09 格式:DOC 页数:15 大小:124.81KB
返回 下载 相关 举报
阿里巴巴校园招聘笔试试题-软件研发工程师+答案[ww.com]_第1页
第1页 / 共15页
阿里巴巴校园招聘笔试试题-软件研发工程师+答案[ww.com]_第2页
第2页 / 共15页
阿里巴巴校园招聘笔试试题-软件研发工程师+答案[ww.com]_第3页
第3页 / 共15页
阿里巴巴校园招聘笔试试题-软件研发工程师+答案[ww.com]_第4页
第4页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《阿里巴巴校园招聘笔试试题-软件研发工程师+答案[ww.com]》由会员分享,可在线阅读,更多相关《阿里巴巴校园招聘笔试试题-软件研发工程师+答案[ww.com](15页珍藏版)》请在金锄头文库上搜索。

1、阿里巴巴校园招聘笔试试题-软件研发工程师+答案阿里巴巴秋季校园招聘-软件研发工程师笔试题1. 单选题1. 假设把整数关键码K散列到N个槽列表,以下哪些散列函数是好的散列函数A: h(K)=K/N;B: h(K)=1;C: h(K)=K mod N;D: h(K)=(K rand(N) mod N, rand(N)返回0到N-1的整数答案:D2. 下面排序算法中,初始数据集的排列顺序对算法的性能无影响的是:A: 堆排序B:插入排序C: 冒泡排序D:快速排序答案:A(插入排序:最优时间复杂度O(n)最差时间复杂度O(n2)平均时间复杂度O (n2)冒泡排序:最优时间复杂度O(n)最差时间复杂度O(

2、n2)平均时间复杂度O(n2)快速排序:最优时间复杂度O(nlogn)最差时间复杂度O(n2)平均时间复杂度O(nlogn)堆排序:最优时间复杂度O(nlogn)最差时间复杂度O(nlogn)平均时间复杂度O(nlogn)3. 下面说法错误的是:A: CISC计算机比RISC计算机指令多B: 在指令格式中,采用扩展操作码设计方案的目的是为了保持指令字长不变而增加寻址空间C:增加流水线段数理论上可以提高CPU频率D:冯诺依曼体系结构的主要特征是存储程序的工作方式答案:B4. 不属于冯诺依曼体系结构必要组成部分是:A:CPU B: Cache C:RAM D:ROM答案:B5. 一个栈的入栈序列式

3、ABCDE则不可能的出栈序列是:A:DECBA B:DCEBA C:ECDBA D:ABCDE答案:C6.你认为可以完成编写一个C语言编译器的语言是:A:汇编B:C语言C:VB D:以上全可以答案:D7. 关于C /JAVhttp A类中的static成员和对象成员的说法正确的是:A:static成员变量在对象构造时候生成B: static成员函数在对象成员函数中无法调用C: 虚成员函数不可能是static成员函数D: static成员函数不能访问static成员变量答案:A9:某进程在运行过程中需要等待从磁盘上读入数据,此时进程的状态将:A: 从就绪变为运行B:从运行变为就绪C: 从运行变为

4、阻塞D:从阻塞变为就绪答案:C10:下面算法的时间复杂度为:Int f(unsigned int n)If(n=0|n=1)Return 1;ElseReturn n*f(n-1);A: O(1) B:O(n) C:O(N*N) D:O(n!)11: n从1开始,每个操作可以选择对n加1或者对n加倍。若想获得整数2013,最少需要多少个操作。A:18 B:24 C:21 D;不可能答案:A,对2013用除法,显示2013-2012-1006-503-502-251-250-125-124-62-31-30-15-14-7-6-3- 2-1正向只能是 1和2,所以逆向只能-1和/2,由上过程可得

5、18次12:对于一个具有n个顶点的无向图,若采用邻接表数据结构表示,则存放表头节点的数组大小为:A: n B: n 1 C: n-1 D:n 边数答案:A13:此处图片未下载成功答案:A.对于几http 何中的每个字符串取hash可以看作是同分布的独立重复事件,所以每一个事件出现10的概率都是p=1/1024,那么当出现的时候,期望的次数就是1/p,1024.14:如下函数,在32bit系统foo(231-3)的值是:Int foo(int x)Return x&-x;A:0 B: 1 C:2 D:415:对于顺序存储的线性数组,访问节点和增加节点删除节点的时间复杂度为:A: O(n),O(n

6、)B:O(n),O(1) C:O(1),O(n) D:O(n),O(n)答案:C16:在32为系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是:Struct AInt a;short b;int c;char d;Struct Bint a;short b;char c;int c;A: 16,16 B:13,12 C:16,12D:11,16答案:C17:袋中有红球,黄球,白球各一个,每次任意取一个放回,如此连续3次,则下列事件中概率是8/9的是:A: 颜色不全相同B:颜色全不相同C:颜色全相同D:颜色无红色18:一个洗牌程序的功能是将n张牌的顺序打乱,以下关于洗

7、牌程序的功能定义说法最恰当的是:A: 每张牌出现在n个位置上的概率相等B: 每张牌出现在n个位置上的概率独立C: 任何连续位置上的两张牌的内容独立D: n张牌的任何两个不同排http 列出现的概率相等答案:A19:用两种颜色去染排成一个圈的6个棋子,如果通过旋转得到则只算一种,一共有多少种染色:A: 10 B:11 C:14: D:15答案:C解释:应该有14种方案,设只有黑白两色,默认白色,那么,用p(n)表示有n个黑棋的种类p(0)=p(6)=1p(1)=p(5)=1p(2)=p(4)=3 /相邻的一种,隔一个的一种,两个的一种p(3)=4 /都相邻的一种,BB0B的一种,BB00B的一种

8、,B0B0B的一种,一共4种综上是14种20:递归式的先序遍历一个n节点,深度为d的二叉树,则需要栈空间的大小为:A: O(n) B:O(d) C:O(logn) D:(nlogn)答案:B第二部分:多选21:两个线程运行在双核机器上,每个线程主线程如下,线程1:x=1;r1=y;线程2:y=1;r2=x;X和y是全局变量,初始为0。以下哪一个是r1和r2的可能值:A: r1=1,r2=1B: r1=1,r2=0C:r1=0,r2=0D:r1=0,r2=1答案:ABD22.关于Linux系统的负载,以下表述正确的是:A: 通过就绪和运行的进程数来反映B: 通过TOP命令查看C: 通过uptim

9、e查看D: Load:2.5,1.3,1.1表示系统的负载压力在逐渐变小答案:BC(对于A不确定)23:关于排序算法的以下说法,错误的是:A: 快速排序的平均时间复杂度O(nlogn),最坏O(N2)B:堆排序平均时间复杂度Ohttp (nlogn),最坏O(nlogn)C:冒泡排序平均时间复杂度O(n2),最坏O(n2)D:归并排序的平均时间复杂度O(nlogn),最坏O(n2)答案:D解释:归并排序的平均时间复杂度O(nlogn),最坏O(nlogn)24:假设函数rand_k会随机返回一个【1,k】之间的随机数(k=2),并且每个证书出现的概率相等。目前有rand_7,通过调用rand_

10、7()和四则运算符,并适当增加逻辑判断和循环控制逻辑,下列函数可以实现的有:A:rand_3 B:rand_21 C:rand_23 D:rand_49答案:ABCD解释:对于rand_x(x阿里巴巴2014秋季校园招聘-软件研发工程师笔试题续2013-09-21 23:32368人阅读评论(0)收藏举报校园招聘百度阿里巴巴软件研发算法第三部分25、某二叉树的前序遍历序列为- a*b-cd/ef,后序遍历序列为abcd-* ef/-,问其中序遍历序列是。答案:a b*c-d-e/f26、某缓存系统采用LRU淘汰算法,假定缓存容量为4,并且初始为空,那么在顺序访问以下数据项的时候1,5,1,3,

11、2,4,1,2出现缓存命中的次数是。最后缓存中即将准备淘汰的数据项是。答案:3,3解释:(LRU是Least Recently Used 近期最少使用算法。)1-1,5-5,1-5,1,3-5,1,3,2-1,3,2,4-3,2,4,1-3,4,1,2-首先1调入内存,然后5调入内存,然后1调入内存(命中缓存),然后3调入内存,然后2调入内存,然后4调入内存(将最少使用的5置换出内存),然后1调入内存(命中缓存),然后2调入内存(命中缓存)。最后,最少使用的3将面临被置换出的危险。2http 7、两个较长的单向链表a和b,为了找出及诶单noed满足node in a并且node in b。请设

12、计空间使用尽量小的算法(用c/c ,java 或者伪代码)htmlview plaincopyprint?1struct node23int v;4node *next;5;6/*7返回链表的长度8链表为空返回09*/10size_t listLen(node * p)1112size_t num = 0;13while (p!=NULL)1415num ;16p = p-next;1718return num;1920/ 如果找到了则返回指针指向公共节点21/ 如果不存在则返回空指针22node * findFirstCommenNode(node * pheada, node * phea

13、db) 2324size_t lenA = listLen(pheada);25size_t lenB = listLen(pheadb);2627node * plistA = pheada;28node * plistB = pheadb;29/调整长度30/plistA 指向较长的一个31if (lenA 3233plistB = pheada;34plistA = pheadb;35size_t t http = lenA;36lenA = lenB;37lenB = t;3839while(lenA lenB)4041plistA = plistA-next;42-lenA;4344/一样长了45/寻找公共节点46while (plistA!=NULL & plistA != plistB)4748plistA = plistA-next;49plistB = plistB-next;5051return plistA;52算法的空间复杂度O(1),时间复杂度O(m n)。28、当存储数据量超出单节点数据管理能力的时候,可以采用的办法有数据库sharding的解决方案,也就是按照一定的规律把数据分散存储在多个数据管理节点N中(节点编号为0,1,2,N-1)。假设存

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号