滴滴 2016 研发工程师笔试题(二)(16 题)


点击「查看答案」展开答案解析。

来源: 牛客原题 | 题量: 16 题

第1题(单选题) 关于ARP表,以下描述中正确的是()  A. 用于在各个子网之间进行路由选择  B. 提供常用目标地址的快捷方式来减少网络流量  C. 用于建立IP地址到MAC地址的映射  D. 用于进行应用层信息的转换

查看答案

答案:C ARP 表缓存 IP 地址到 MAC 地址的映射,用于同一局域网内的链路层寻址。

第2题(单选题) 下列有关Socket的说法,错误的是()  A. Socket用于描述IP地址和端口,是一个通信链的句柄  B. Socket通信必须建立连结  C. Socket客户端的端口是不固定的  D. Socket服务端的端口是固定的

查看答案

答案:B UDP Socket 无需建立连接即可通信,B 错;A、C、D 正确。

第3题(单选题) 下列PHP配置项中,哪一个和安全最不相关:()  A. open_basedir  B. register_globals  C. disable_functions  D. file_uploads

查看答案

答案:D(file_uploads) open_basedir、register_globals、disable_functions 都直接关乎安全;file_uploads 只是控制是否允许上传的开关,与安全最不直接相关。

第4题(单选题) 在深度学习中,涉及到大量矩阵相乘,现在需要计算三个稠密矩阵A,B,C的乘积ABC,假设三个矩阵的尺寸分别为mn,np,p*q,且m<n<p<q,以下计算顺序效率最高的是( )  A. A(BC)  B. (AB)C  C. (AC)B  D. 所有效率都相同

查看答案

答案:B((AB)C) (AB)C 计算量 = mnp + mpq = mp(n+q);A(BC) = npq + mnq = nq(p+m)。因 m<n、p<q,有 mp ≪ nq,故 (AB)C 更少。

第5题(单选题) 如果137+276=435,那么731+672=()  A. 1513  B. 1403  C. 534  D. 1623

查看答案

答案:D(1623) 137+276=435 表明是八进制(7+6=13→5 进 1)。八进制下 731+672 = 1623。

第6题(单选题) C语言中5|7的结果是()  A. 1  B. 3  C. 5  D. 7

查看答案

答案:D(7) 5|7 = 0b101 | 0b111 = 0b111 = 7。

第7题(单选题) 如果计算机内存大小为32M,按字节编码,则表示该内存地址至少需要()位?  A. 25  B. 32  C. 24  D. 16

查看答案

答案:A(25) 32M = 2^25 字节,按字节编址需 25 位地址。

第8题(单选题) 如果我们可以通过覆盖率检测来判断我们是否对所有的路径都进行了测试,但是仍然可能存在未被检测出来的缺陷,原因是()  A. 全部选项  B. 程序可能因为缺某些路径而存在问题  C. 穷举路径的测试可能不好暴露数据敏感的错误  D. 就算穷举路径测试也不能保证程序符合需求

查看答案

答案:A(全部选项) B、C、D 都是路径覆盖仍可能漏测的原因。

第9题(单选题) 我们在将某个订单送给某一司机之前,需要计算一下这个司机选择接受这个订单的概率,现有A,B两个订单,对某一司机。已知:

1.如果只将订单A播送给司机,司机接受的概率是Pa;

2.如果只将订单B播送给司机,司机接受的概率是Pb;

现在讲A,B同时播送给该司机,司机选择A的概率是多少()  A. Pa  B. Pa*(1-Pb)  C. Pa*(1-Pb)/(1-PaPb)  D. [1-(1-Pa)(1-Pb)]*Pa/(Pa+Pb)

查看答案

答案:B(Pa(1-Pb))* 在「司机对 A、B 的接受意愿相互独立」的假设下,选择 A = 接受 A 且拒绝 B = Pa·(1−Pb)。

第10题(单选题) 下述几种排序方法中,要求内存最大的是()  A. 快速排序  B. 插入排序  C. 选择排序  D. 归并排序

查看答案

答案:D(归并排序) 归并排序需 O(N) 辅助空间,其余为原地或 O(logN)。

第11题(单选题) 链表不具有的特点是()  A. 不需要事先估计存储空间大小  B. 所需空间和线性表长度成正比  C. 可随机访问任一元素  D. 插入删除不需要移动表内其他元素

查看答案

答案:C 链表只能顺序访问,不能随机访问任一元素。

第12题(单选题) 表达式“X=A+B*(C-D)/E+F”的后缀表示形式可以为()  A. XAB+CDEF/-*+=  B. XA+BC-DE/*F+=  C. XABCD-E/+F+=  D. XABCDEF+/+=

查看答案

答案:C 中缀 X=A+B*(C-D)/E+F 转后缀:XABCD-*E/+F+=。

第13题(单选题) 同源策略是浏览器的安全基石,但互联网业务往往需要实现跨域通信,以下哪一种方案可以实现跨域?()  A. CSP  B. AJAX  C. Oauth  D. CORS

查看答案

答案:D(CORS) CORS(跨域资源共享)是标准跨域方案;CSP 是内容安全策略,AJAX 受同源限制,OAuth 是授权协议。

第14题(单选题) 采用多路 I/O 复用监听 3 个套接字的数据时,如果套接字描述符分别是:5,17,19,则下面 select 代码中的 maxfd 应取为()

select(int maxfd,struct fd_set* rdset,NULL,NULL)

 A. 4  B. 20  C. 5  D. 19

查看答案

答案:B(20) select 的 maxfd 取最大描述符 + 1,即 19+1=20。

第15题(单选题) 对于下面的C语言声明描述正确的一项是()

char (*p)[16]  A. p是长度为16的字符指针数组  B. p是包含16个字符的字符串  C. p是指向长度为16的字符数组的指针  D. p是长度为16的字符数组

查看答案

答案:C char (*p)[16]:p 是指向长度为 16 的字符数组的指针。

第16题(单选题)

int main{
    fork() || fork()
}

共创建了()个进程  A. 3  B. 2  C. 1  D. 4

查看答案

答案:A(3) fork() || fork():父进程 fork 返回非 0 短路不再 fork;子进程返回 0 继续执行第二个 fork。共产生 3 个进程(原+子+孙)。

← 返回题库