2021年阿里巴巴程序员面试题.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2021年阿里巴巴程序员面试题.docx》由会员分享,可在线阅读,更多相关《2021年阿里巴巴程序员面试题.docx(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2021年阿里巴巴程序员面试题解析:双绞线也称为双扭线,是最古老但又最常用的传输媒体。把两根相互绝缘的铜导线并排放在一起,然后用规则的方法绞合起来这样做是为了减少相邻的导线的电磁干扰而构成双绞线。双绞线分为1类到5类,局域网中常用的为3类,4类和5类双绞线。3类线用于语音传输及最高传输速率为10Mbps的数据传输;4类线用于语音传输和最高传输速率为16Mbps的数据传输;5类线用于语音传输和最高传输速率为100Mbps的数据传输同轴电缆由内导体铜质芯线,绝缘层,网状编制的外导体屏蔽层及保护塑料外层组成,内导体和外导体构成一组线对。由于外导体屏蔽层的作用,同轴电缆具有很好的抗干扰性。同轴电缆能够
2、将10Mb/S的基带数字信号传送1千米到1.2千米,因而被广泛用于局域网中光纤通信就是利用光导纤维传递光脉冲来进行通信,而光导纤维是光纤通信的媒体。光纤在任何时间都只能单向传输,因而,要实行双向通信,它必须成对出现,一个用于输入,一个用于输出,光纤两端接到光学接口上。光纤的传输系统比同轴电缆大的多,一般小同轴电缆的最大传输带宽为20MHz左右,中同轴电缆的最大传输带宽为60MHz左右。单根光导纤维的数据传输速率能达几Gbps,在不使用中继器的情况下,传输距离能达几十公里。答案:C第3题:进程阻塞的原因不包括_。A时间片切换B等待I/OC进程sleepD等待解锁答案:A解析:进程有3个状态:就绪
3、态。执行态、阻塞态。三种状态的转换包含有:就绪-执行,执行-就绪,执行-阻塞,阻塞-就绪等待I/O、进程sleep、等待解锁等原因都会导致进程暂停。关于时间片切换,当进程已经获得了除cpu外所有的资源,这时的状态就是就绪态,当分配到了时间片就成了执行态,当时间片用完之前一直未进入阻塞态的话,此后便继续进入就绪态。所以进程的就绪与阻塞是完全不同的。答案:A第4题:设只含根节点的二叉树高度为1,现有一颗高度为h(h1)的二叉树上只要出度为0和出度为2的结点,则此二叉树中所包含的结点数至少为_个。A2h-1B2h-1C2hD2h+1答案:B解析:保证树的高度就只要最左边的左子树有节点能保证最少,画出
4、来后发现答案是B答案:B第5题:给定下列程序,那么执行printf(%dn,foo(20,13);的输出结果是_。intfoo(intx,inty)if(x=0|y=0)return1;return3*foo(x-6,y/2);A3B9C27D81答案:D3*6204*6,递归4层。log13log16=4;所以结果为34=81.第6题:对于下面讲法,错误的是_。ADijkstra算法用于求解图中两点间最短途径,其时间复杂度O(n2)BFloyd-Warshall算法用于求解图中所有点对之间最短途径,其时间复杂度为O(n3)C找出n个数字的中位数至少需要O(n*logn)的时间D基于比拟的排序
5、问题的时间复杂度下界是O(n*logn)答案:C解析:AB正确,考察基本算法。D正确,基于比拟的话,怎么样都至少需要O(n*logn)的时间。找一个数能否是中位数,能够利用快排的经过而不是快排,就和O(N)第K数一样。答案:C第7题:一个包里有5个黑球,10个红球和17个白球。每次能够从中取两个球出来,放置在外面。那么至少取_次以后,一定出现过取出一对颜色一样的球。A16B9C4D1答案:A题目要求是一定出现,是必然情况,此题能够以为是鸽巢问题。考虑最坏情况黑球用B表示红球用R表示白球用W表示前面15次取球情况B,WB,WB,WB,WB,WR,WR,WR,WR,WR,WR,WR,WR,WR,W
6、R,W最后只剩下两个白球了W,W所以致少16次,才一定出现。第8题:某地电信局要对业务号码进行梳理,需要检测开通的市话号码能否存在某一个是另一个的前缀的情况,以简化电话交换机的逻辑。例如:某用户号码是“11001100,但与110报警电话产生前缀配对。已知市话号码最长8位,最短3位,并且所有3位的电话号码都以1开始。由于市话号码诸多,长度也未必一直,高效的算法能够用O(n)的时间复杂度完成检测n为开通市话号码个数,数量是千万级的。那么,该算法最坏情况下需要消耗大约_内存空间。A5GBB500MBC50MBD5MB答案:C解析:千万级,也就是10,000,000。市话最长8位,也就是一个字节的空
7、间,那么全部存下这些号码所消耗的空间为:1B*1000*1000*10=10MB不必纠结1000还是1024,只要代表了千万级的数量就行了。所以是两位数的级别。答案:C第9题:骑士只讲真话,骗子只讲谎言。下列场景中能确定一个骑士、一个骗子的有_。A甲讲:“我们中至少有一个人讲真话,乙什么也没讲。B甲讲:我们两个都是骗子,乙什么也没讲。C甲讲:“我是个骗子或者乙是个骑士,乙什么也没讲。D甲和乙都讲:“我是个骑士。E甲讲:“乙是个骑士,乙讲:“我们俩一个是骑士一个是骗子。答案:B假如甲是骑士,那么骑士讲真话,就不会是骗子,而他讲他们两个都是骗子,那么甲必然是骗子,讲的是谎言,所以二个人中至少有一个
8、是骑士,那么就只要乙是骑士了。第10题:给定一个m行n列的整数矩阵如图,每行从左到右和每列从上到下都是有序的。判定一个整数k能否在矩阵中出现的最优算法,在最坏情况下的时间复杂度是_。1579461015811121914161821AO(m*n)BO(m+n)CO(log(m*n)DO(log(m+n)答案:B杨氏矩阵查找算法lispanspanboolstepWise(spanintmatN_MAX,spanintN,spaninttarget,spanspanintrow,spanintcol)/span/span/span/span/span/span/span/spanlispansp
9、anif(targetmat00|targetmatN-1N-1)spanreturnspanfalse;spanrow=0;/span/span/span/span/spanlispancol=N-1;spanspanwhile(row=N-1col=0)/span/span/spanlispanspanif(matrowcoltarget)spanrow+;/span/span/spanlispanspanelsespanif(matrowcoltarget)spancol-;/span/span/span/spanlispanspanelsespanspanreturnspantrue;
10、/span/span/span/span/spanlispanspanspanreturnspanfalse;/span/span/span/spanlispan/span/li/ol第11题:二、不定项选择某服务请求经负载平衡设备分配到集群A、B、C、D进行处理响应的概率分别是10%、20%、30%和40%。已知测试集群所得的稳定性指标分别是90%、95%、99%和99.9%。如今该服务器请求处理失败,且已排除稳定性以外的问题,那么最有可能在处理该服务请求的集群是_。答案:AB解析:选中该集群,并且处理失败了的概率为:10%*10%、20%*5%、30%*1%、40%*0.1%。A与B的概率
11、最高。答案:A、B第12题:甲乙两人捡到一个价值10元的购物卡。协商后打算通过这样的拍卖规则来确定归属:两人单独出价能够出0元,出价高者得到购物卡同时将与出价一样数量的前给对方。假如两人出价一样,则通过掷硬币来决定购物卡的归属。例如:甲和乙都出价1元,他们通过掷硬币来决定购物卡的归属。此时,得到购物卡的人赚9元,另一人赚1元。两人都同意用手头的现金来进行出价。甲和乙都知道甲有6元、乙有8元,两人都期望本人尽可能多赚。那么_。A乙最终赚的比甲多B甲最终赚的比乙多C甲乙两人中可能有一人会有损失D甲乙两人赚的一样多答案:D首先甲乙都不会出5块钱以上的,由于那样本人会亏。但出5块钱下面,比方4块,对方
12、能够出5块,这样本人就输了,所以也不会出5块钱下面的。最后博弈后双赢的结果就是一方出五块,一方出0块,然后各得5块第13题:下面_状态为TCP连接关闭经过中的出现的状态。ALISTENBTIME-WAITCLAST-ACKDSYN-RECEIVED答案:BC主要部分,四次握手:断开连接其实从我的角度看不区分客户端和服务器端,任何一方都能够调用close(orclosesocket)之类的函数开场主动终止一个连接。这里先暂时讲正常情况。当调用close函数断开一个连接时,主动断开的一方发送FIN(finish报文给对方。有了之前的经历,我想你应该明白我讲的FIN报文时什么东西。也就是一个设置了F
13、IN标志位的报文段。FIN报文可以能附加用户数据,假如这一方还有数据要发送时,将数据附加到这个FIN报文时完全正常的。之后你会看到,这种附加报文还会有很多,例如ACK报文。我们所要把握的原则是,TCP肯定会力所能及地到达最大效率,所以你能够想到的优化方法,我想TCP都会想到。当被动关闭的一方收到FIN报文时,它会发送ACK确认报文(对于ACK这个东西你应该很熟悉了)。这有个东西要注意,由于TCP是双工的,也就是讲,你能够想象一对TCP连接上有两条数据通路。当发送FIN报文时,意思是讲,发送FIN的一端就不能发送数据,也就是关闭了其中一条数据通路。被动关闭的一端发送了ACK后,应用层通常就会检测
14、到这个连接即将断开,然后被动断开的应用层调用close关闭连接。第14题:假如在一个排序算法的执行经过中,没有一对元素被比拟过两次或以上,则称该排序算法为节省排序算法,下面算法中是节省排序算法的有_。A插入排序B选择排序C堆排序D归并排序答案:AD【解析】A每个未排序的元素只会与已经有序的元素进行至多一次比拟D每个有序列表内的元素不进行比拟;列表之间的元素比拟一次之后就进入了同一个列表第15题:三、填空题请补全下面的快速排序代码,答案中请不要包含空格。voidqsort(int*array,intlen)intvalue,start,end;if(len=1)return;value=arra
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2021 阿里巴巴 程序员 试题
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内