《2021年阿里巴巴工程师A笔试面试题 (2).docx》由会员分享,可在线阅读,更多相关《2021年阿里巴巴工程师A笔试面试题 (2).docx(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2021年阿里巴巴工程师A笔试面试题假如一个博物馆参观者到达的速率是每分钟20人,平均每个人在馆内停留20分钟,那么该博物馆至少需要包容_人才行?A.100B.200C.300D.400E.500F.600答案:D第3题:计算三个稠密矩阵A、B、C的乘积ABC,假定三个矩阵的尺寸分别为m*n,n*p,p*q,且mnpq,下面计算效率最高的是A.(AB)CB.A(BC)C.(AC)BD.(BC)AE.(CA)B答案:A第4题:通过算法生成的随机数是“伪随机的,也就是讲,在设定好第一个数之后,后面的数字的序列是确定的,并且经过一个非常大的循环会回到第一个数的状态,然后周而复始。显然,摇号、抽奖的程
2、序是不能通过伪随机数来实现的。现实中经常基于某种热噪声来实现真正的随机数。假定某热噪声是标准正态分布,那么能否将它转换成(0,1)区间上的均匀分布_?A.忽略测量和计算误差,能够转换为(0,1)区间上的均匀分布B.无法转换为(0,1)区间上的均匀分布C.信息缺乏,无法判定D.借助伪随机数生成算法能够转换为(0,1)区间上的均匀分布E.仅仅靠伪随机数生成算法,就能够生成(0,1)区间上的均匀分布F.以上讲法都不对答案:A第5题:有一个用数组C1.m表示的环形队列,m为数组的长度。假设f为队头元素在数组中的位置,r为队尾元素的后一位置(按顺时针方向)。若队列非空,则计算队列中元素个数的公式应为?A
3、.m+r-fmodmB.r-fC.(m-r+f)modmD.(m-r-f)modmE.(r-f)modm答案:A第6题:某足球队有四名外援,分别来自巴西、荷兰、意大利和美国。他们分别擅于前锋、后卫或守门,其中:美国外援单独擅于守门;意大利外援不擅于前锋;巴西外援和另外某个外援擅于一样的位置;荷兰外援擅于的位置和巴西外援不同。以上条件能够推出巴西外援擅于的位置是_。A.前锋B.守门C.后卫D.前锋或守门E.后卫或守门F.前锋或后卫答案:C第7题:二分查找树里查询一个关键字的最坏时间复杂度是_A.O(n)B.O(nlogn)C.O(n2)D.O(n3)E.O(logn)F.不确定答案:A第8题:假
4、设某段通信电文仅由6个字母ABCDEF组成,字母在电文中出现的频率分别为2,3,7,15,4,6。根据这些频率作为权值构造哈夫曼编码,最终构造出的哈夫曼树带权途径长度与字母B的哈夫曼编码分别为_。(这里假定左节点的值小于右节点的值)A.86,1011B.70,1000C.86,0001D.70,0010E.92,1000F.92,0100答案:A第9题:并发进程执行的相对速度是_。A.由进程的程序构造决定B.由进程本身来控制C.进程被创立时决定D.与进程调度策略有关E.与进程的销毁时间有关F.由内存分配策略决定答案:D第10题:某团队有2/5的人会写Java程序,有3/4的人会写C+程序,这个
5、团队里同时会写Java和C+的最少有_人。A.3B.4C.5D.8E.15答案:A第11题:有一个装过食盐的瓶子,容积是w,在食盐用完之后,还有一些食盐粉末体积能够忽略残留在瓶子壁上。如今要把该瓶子改装糖,给你u体积的纯净水,用来清洗该瓶子。在每次清洗之后,瓶子里会残留至少v体积的水食盐溶液,能够忽略盐的体积。假设wuv,请问下述哪种方式使用这些纯净水,能把瓶子洗得最干净_?A.把所有的纯净水全部倒入瓶子,然后把水倒掉B.将纯净水平均分成两份,用每一份清水洗一遍瓶子。C.每次注入体积为v的纯净水清洗瓶子,直到纯净水用尽D.每次注入体积为2v的纯净水清洗瓶子,直到纯净水用尽E.将用过的水重新诸如
6、瓶子,屡次清洗F.以上方法清洗效果一样答案:C第12题:下列C代码中,不属于未定义行为的有:_。A.inti=0;i=(i+);B.char*p=hello;p1=EC.char*p=hello;charch=*p+D.inti=0;printf(“%d%dn,i+i-)E.都是未定义行为F.都不是未定义行为答案:C第13题:毕业典礼后,某宿舍三位同学把本人的毕业帽扔了,随后每个人随机地拾起帽子,三个人中没有人选到本人原来带的帽子的概率是A.1/2B.1/3C.1/4D.1/6E.1/8F.1/9答案:B第14题:村长带着4对父子参加爸爸去哪儿第三季第二站某村庄的拍摄。村里为了保护小孩不被拐走
7、有个前年的规矩,那就是吃饭的时候小孩左右只能是其他小孩或者本人的父母。那么4对父子在圆桌上共有_种坐法。旋转一下,每个人面对的方向变更后算是一种新的坐法A.144B.240C.288D.480E.576F.960答案:D第15题:分布式系统中,_不是可扩展性所需要的A.无状态应用集群B.分布式缓存C.负载平衡D.硬件分享存储E.分而治之的策略F.以上所有都是答案:F第16题:若干个等待访问磁盘者依次要访问的磁道为19,43,40,4,79,11,76,当前磁头位于40号柱面,若用最短寻道时间优先磁盘调度算法,则访问序列为_A.19,43,40,4,79,11,76B.40,43,19,11,4
8、,76,79C.40,43,76,79,19,11,4D.40,43,76,79,4,11,19E.40,43,76,79,11,4,19F.40,19,11,4,79,76,43答案:B第17题:C+内存分配中讲法错误的是:_。A.对于栈来讲,生长方向是向上的,也就是向着内存地址增加的方向B.对于堆,大量的new/delete操作会造成内存空间的不连续C.堆容易产生memoryleakD,堆的效率比栈要低的多D.堆的效率比栈要低得多E.栈变量引用容易逃逸F.以上都对答案:A第18题:下列关于网络编程错误的是_。A.UDP是不可靠服务B.主动关闭的一端会出现TIME_WAIT状态C.服务端编程
9、会调用listen(),客户端可以以调用bind()D.TCP建立和关闭连接都只需要三次握手E.Linux通过提供提供socket接口来进行网络编程F.长连接相对短连接能够节省建立连接的时间答案:D第19题:在32位操作系统中,下列类型占用8个字符的为_。A.shortintB.IntClongC.UnsignedintD.LonglongE.CharF.Int答案:D第20题:在小端序的机器中,假如unionXintx;chary4;假如:Xa;a.x=0x11223344;/16进制则:_A.a.y0=11B.a.y1=11C.a.y2=11D.a.y3=11E.a.y0=22F.a.y3
10、=22答案:D第21题:问答题题目描绘java中的wait()方法和sleep()方法的区别是什么?对于sleep()方法,我们首先要知道该方法是属于Thread类中的。而wait()方法,则是属于Object类中的。sleep()方法导致了程序暂停执行指定的时间,让出cpu该其他线程,但是他的监控状态仍然保持者,当指定的时间到了又会自动恢复运行状态。在调用sleep()方法的经过中,线程不会释放对象锁。而当调用wait()方法的时候,线程会放弃对象锁,进入等待此对象的等待锁定池,只要针对此对象调用notify()方法后本线程才进入对象锁定池准备。第22题:问答题题目描绘写一个函数,输入一个二
11、叉树,树中每个节点存放了一个整数值,函数返回这棵二叉树中相差最大的两个节点间的差值绝对值。请注意程序效率。先求每个子树的最大值和最小值,递归实现。第23题:问答题题目描绘:给定一个query和一个text,均由小写字母组成。要求在text中找出以同样的顺序连续出如今query中的最长连续字母序列的长度。例如,query为“acbac,text为“acaccbabb,那么text中的“cba为最长的连续出如今query中的字母序列,因而,返回结果应该为其长度3。请注意程序效率。最长公共子序列看过(算法导论)的人应该知道,动态规划中一个非常经典的例子就是LCS(LongestCommonLengt
12、h)最长公共子序列问题。下面我们来回首一下LCS的概念。假设有两个字符串,X=A,B,C,B,D,A,B,Y=B,D,C,A,B,A,那么它们的最长公共子序列为B,C,B,A,它的特点在于每个字符能够不连续。LCS问题在实际中也有非常多的应用,比方讲用于论文查重等。都讲表达一个动态规划算法的精华在于状态转移方程,那么我们就顺便回忆一下LCS的状态转移方程吧。假如用ci,j来表示序列Xi和Yi的LCS的长度,那么有状态转移方程:下面进入本文的重点。假如将LCS的条件加严,要求子序列中的字符必须是连续的。那么应该怎样求解这个最长公共连续子序列呢?为了便于书写,后文中再提到“最长公共连续子序列,我都
13、一律用STRICT-LCS代替。为了便于理解,还是用之前的两个字符串来举例讲明什么是STRICT-LCS。X=A,B,C,B,D,A,B,Y=B,D,C,A,B,A。那么它们的最长公共连续子序列为B,D。我们仍然用DynamicProgramming求解。只不过在原来的基础上需要改变。首先,我们定义ci,j跟原来的意义略有不同。这里ci,j指的是最后一个元素为Xi(=Yj)的STRICT-LCS的长度,比方X=A,B,C,Y=A,B,D那么c3,3=0,不管前面怎样,假如Xi和Yj不相等,就得将ci,j清零,作为新的开场。LCS中,ci,j的值随着i、j值增大而渐渐增大,有累计效应;但是STRICT-LCS中,ci,j的值随时可能在某个时刻被清零。