阿里巴巴2013研发工程师笔试卷

时长:120分钟 总分:100分

197浏览 0人已完成答题

题型介绍
题型 单选题 多选题 判断题 简答题
数量 11 3 1 5
1.
-7的二进制补码表示为:
问题详情




2.
2.以下四种介质中,带宽最大的是________。
问题详情

以下四种介质中,带宽最大的是________。




3.
进程阻塞的原因不包括________。
问题详情




4.
设只含根节点的二叉树高度为1,现有一颗高度为h(h>1)的二叉树上只有出度为0和出度为2的结点,则此二叉树中所包含的结点数至少为________个。
问题详情




5.
给定下列程序,那么执行printf("%d\n", foo(20, 13))的输出结果是________。 int foo(int x, int y){ if (x <= 0 || y <= 0) return 1 return 3 * foo( x-6, y/2 ) }
问题详情

给定下列程序,那么执行printf("%d\n", foo(20, 13))的输出结果是________。
int foo(int x, int y){
    if (x <= 0 || y <= 0) 
        return 1 
    return 3 * foo( x-6, y/2 ) 
}






6.
对于以下说法,错误的是________。
问题详情




7.
一个包里有5个黑球,10个红球和17个白球。每次可以从中取两个球出来,放置在外面。那么至少取________次以后,一定出现过取出一对颜色一样的球。
问题详情




8.
某地电信局要对业务号码进行梳理,需要检测开通的市话号码是否存在某一个是另一个的前缀的情况,以简化电话交换机的逻辑。例如:某用户号码是“11001100”,但与"110"报警电话产生前缀配对。已知市话号码最长8位,最短3位,并且所有3位的电话号码都以1开头。由于市话号码众多,长度也未必一直,高效的算法可以用O(n)的时间复杂度完成检测(n为开通市话号码个数,数量是千万级的)。那么,该算法最坏情况下需要耗费大约________内存空间。
问题详情




9.
骑士只说真话,骗子只说假话。下列场景中能确定一个骑士、一个骗子的有________。
问题详情





10.
给定一个m行n列的整数矩阵(如图),每行从左到右和每列从上到下都是有序的。判断一个整数k是否在矩阵中出现的最优算法,在最坏情况下的时间复杂度是________。
问题详情




11.
某服务请求经负载均衡设备分配到集群A、B、C、D进行处理响应的概率分别是10%、20%、30%和40%。已知测试集群所得的稳定性指标分别是90%、95%、99%和99.9%。现在该服务器请求处理失败,且已排除稳定性以外的问题,那么最有可能在处理该服务请求的集群是________。
问题详情




12.
甲乙两人捡到一个价值10元的购物卡。协商后打算通过这样的拍卖规则来确定归属:两人单独出价(可以出0元),出价高者得到购物卡同时将与出价相同数量的前给对方。如果两人出价相同,则通过掷硬币来决定购物卡的归属。例如:甲和乙都出价1元,他们通过掷硬币来决定购物卡的归属。此时,得到购物卡的人赚9元,另一人赚1元。两人都同意用手头的现金来进行出价。甲和乙都知道甲有6元、乙有8元,两人都期望自己尽可能多赚。那么________。
问题详情




13.
以下________状态为TCP连接关闭过程中的出现的状态。
问题详情




14.
如果在一个排序算法的执行过程中,没有一对元素被比较过两次或以上,则称该排序算法为节俭排序算法,以下算法中是节俭排序算法的有________。
问题详情




15.
请补全下面的快速排序代码,答案中请不要包含空格。
问题详情

请补全下面的快速排序代码,答案中请不要包含空格。
void qsort(int *array, int len)
{
    int value, start, end
    if (len <= 1) 
        return 
    value = array[0] 
    start = 0 
    end = len - 1 
    while (start < end) { 
        for ( start < end --end) { 
            if (array[end] < value) { 
                () 
                break 
            } 
        } 
        for ( start < end ++start) { 
            if (array[start] > value)
            {
                ()
                break
            }
        }
    }
    ()
    qsort(array, ())
    qsort((), ())
}

16.
图示是一个网络流从s到t的某时刻快照。此时t处一共接收到10+13+16=39单位流量。每条横线上的数字表示当前流量和管道的容量。那么,该网络最大的流量是多少?当这个网络流量最大时,哪几条边是满负荷的(边用两边顶点标识,s3表示从s到3的边,图上的流量和容量表示为10/10)。
问题详情
17.
某公司有这么一个规定:只要有一个员工过生日,当天所有员工全部放假一天。但在其余时候,所有员工都没有假期,必须正常上班。假设一年有365天,每个员工的生日都概率均等地分布在这365天里。那么,这个公司需要雇用多少员工,才能让公司一年内所有员工的总工作时间期望值最大?
问题详情
18.
给定一个排好升序的数组A[1]、A[2]、&hellip&hellip、A[n],其元素的值都两两不相等。请设计一高效的算法找出中间所有A[i] = i的下标。并分析其复杂度。(不分析复杂度不得分)
问题详情
19.
某怪物被海水冲上一个孤岛。醒来时他发现自己处于险境。周围有N条鳄鱼都虎视眈眈的盯着他。每条鳄鱼看上去都饿得足以把他吞下去。不过,事情也未必真的那么糟糕。鳄鱼吞下他是要花费体力的。这些鳄鱼现在的体力都相当,由于猎食需要花费体力,所以吞下怪物的鳄鱼会由于体力下降而可能被周围的某条鳄鱼吞了。类似的,吞鳄鱼的这条鳄鱼也可能被其他鳄鱼吞了。因此,虽然有食物可猎,但他们自己并不想成为其他鳄鱼的猎食对象。正所谓,螳螂捕蝉,黄雀在后。所以鳄鱼们在确保自己生命安全的情况下才会发动进攻。那么,怪物到底安全么?为什么?
问题详情
20.
当你在浏览器输入一个网址,如http://www.taobao.com,按回车之后发生了什么?请从技术的角度描述,如浏览器、网络(UDP、TCP、HTTP等),以及服务器等各种参与对象上由此引发的一系列活动,请尽可能的涉及到所有的关键技术点。
问题详情