查看原文
其他

滴滴月薪 30K 工程师面试题曝光!

杰哥的IT之旅 杰哥的IT之旅 2022-06-07


点击上方“杰哥的IT之旅”,选择“置顶公众号”

干货、福利第一时间送达!


01第一部分:选择题


1. 下面关于虚拟局域网VLAN的叙述错误的是?


A.不同VLAN内的用户可以相互之间直接通信
B .每一个VLAN的工作站可处在不同的局域网中
C .VLAN是由局域网网段构成的与物理位置无关的逻辑组
D .VLAN能灵活控制广播活动


2. 下面关于系统调用的描述中,错误的是


A 系统调用中被调用的过程运行在”用户态”中
B 利用系统调用能够得到操作系统提供的多种服务
C 系统调用把应用程序的请求传输给系统内核执行
D 系统调用保护了一些只能在内核模式执行的操作指令


3. 下列哪个IP地址可以分配给一台计算机?


A 256.1.3.4
B 197.3.11.0
C 199.5.89
D 11.15.33.235


4. 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法?


A 2^(n-1)
B 2*(n-1)
C 2^n
D 2n


5. 请问经过表达式a = 5 ? 0 : 1的运算,变量a的最终值是?


A 5
B 1
C 0
D true


6. 假设在 n 进制下,下面的等式成立,n 的值是?

567*456=150216


A 9
B 12
C 13
D 18


7. 网络地址为172.16.0.0,采用子网掩码255.255.224.0 .以下说法正确的是


A 其中一个子网的广播地址为:172.16.32.255
B 其中一个子网的广播地址为:172.16.128.255
C 划分了8个有效子网
D 划分了6个有效子网


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

1.如果只将订单A播送给司机,司机接受的概率是Pa; 
2.如果只将订单B播送给司机,司机接受的概率是Pb; 
现在讲A,B同时播送给该司机,司机选择A的概率是多少?


A Pa
B Pa*(1-Pb)
C Pa*(1-Pb)/(1-Pa*Pb)
D [1-(1-Pa)*(1-Pb)]*Pa/(Pa+Pb)


9. 一条tcp连接,主动关闭的一方不可能出现的连接状态是


A CLOSE_WAIT
B FIN_WAIT2
C TIME_WAIT
D FIN_WAIT1


10. 下列关于TCP和UDP叙述正确的是


A 都是无连接的
B TCP是无连接的,UDP是面向链接的
C TCP适用于可靠性较差的广域网,UDP适用于可靠性较高的局域网
D TCP适用于可靠性较高的局域网,UDP适用于可靠性较差的广域网


11. 在gcc环境下,已知数组int arr[5]={1,2,3,4,5};则*(*(&arr+1)-1)的结果为


A 1
B 0
C 4
D 5


12. 如图,有a,b,c,d,e,f,g六个正方形,已知a的边长为n,则红色部分的面积为


A 65*n的平方
B 75*n的平方
C 80*n的平方
D 85*n的平方


13. 一只青蛙,每次可以跳若干(1/2…/n)台阶。求该青蛙跳上一个n(n>0)级的台阶总共有多少种跳法


A 2^(n-1)
B 2*(n-1)
C 2^n
D 2n


14. 下列代码运行出错,可能会是哪一行引起的?


A 1
B 2
C 3
D 4


15. 如果一个二叉树的前序为abcdefg,中序为bcedagf,则该树的后序为


A edbcgfa
B edcbfga
C edcbgfa
D ecdbgfa


16. 在Linux系统中,有一个test文件,它的权限为-rw–wx–x,如果用数字表示权限则是


A 641
B 742
C 652
D 651


17. 在下列几组协议中,哪一组是网络层协议?


A IP,TCP和UDP
B ARP,IP和UDP
C FTP,SMTP和Telnet
D ICMP,ARP和IP


18. 设有五个元素A、B、C、D、E顺序进栈,在进栈过程中可以出栈,则有多少种出栈方式


A 41
B 42
C 43
D 44


19. 下列代码,循环了多少次


A 10
B 11
C 12
D 20


20. 下面程序输出的是:


A 6.25
B 6
C 24
D 25


21. 有以下结构体,请问在64位系统中,sizeof(struct B)的大小为


A 24
B 32
C 40
D 20


22. 下面代码执行完会生成多少个进程


A 10
B 100
C 1024
D 2048


23. 下面关于系统调用的描述中,错误的是


A 系统调用中被调用的过程运行在”用户态”中
B 利用系统调用能够得到操作系统提供的多种服务
C 系统调用把应用程序的请求传输给系统内核执行
D 系统调用保护了一些只能在内核模式执行的操作指令


24. 以下哪个动作可以将逻辑地址转变为内存的物理地址?


A 编译
B 重定位
C 连接
D 运行


25. 在发生死锁的4个必要条件中,破坏以下哪个条件是不现实的?


A 互斥条件
B 不剥夺条件
C 请求和保持条件
D 循环等待条件


26. 字符a-h出现的频率如下:

a : 1, b : 1, c : 2, d : 3, e : 5, f : 8, g : 13, h : 21
使用哈夫曼编码,110111100111010代表的字符串是


A fdheg
B ecgdf
C dchfg
D fehdg


27. 如下代码的空间复杂度


A O(1)
B O(n)
C O(n!)
D O(n^2)


28. 算术表达式a-b*(c-d)/e+f的后缀表达式是


A abcd-*e/-f+
B abcde-*/-f+
C abcde*-/-f+
D abcd*-e/-f+


29. 有256瓶药水,其中有一瓶有毒,用老鼠测试。每次测试两小时出结果,而现在只有两个小时的时间,问最少需要多少只老鼠可以找出这一瓶药?


A 7
B 8
C 9
D 255


参考答案:

1-5:AADAC

6-10:DDDAC

11-15:DDABC

16-20:DDBAC

21-25:BDABA

26-29:ABAB


02第二部分:论述题


30. 请阐述traceroute的工作原理?


参考答案:
trcertroute建立一个UDP数据包,不断修改TTL值并发送出去,如果收到”超时错”,表示刚刚到达的是路由器,而如果收到的是”端口不可达”错误,表示刚刚到达的就是目的主机。这样路由跟踪完成,程序结束。


31. 当你在浏览器输入一个网址,如http://www.didichuxing.com,按回车之后发生了什么?请从技术的角度描述,如浏览器、网络(UDP、TCP、HTTP等),以及服务器等各种参与对象上由此引发的一系列活动,请尽可能的涉及到所有的关键技术点。


参考答案:
1) DNS域名解析:浏览器缓存、系统缓存、路由器、ISP的DNS服务器、根域名服务器。把域名转化成IP地址。 2)与IP地址对应的服务器建立TCP连接,经历三次握手:SYN,ACK、SYN,ACK 3)以get,post方式发送HTTP请求,get方式发送主机,用户代理,connection属性,cookie等 4)获得服务器的响应,显示页面


32. 用变量a给出下面的定义
1 一个整型数
2 一个指向整型数的指针
3 一个指向指针的指针,它指向的指针是指向一个整型数
4 一个有10个整型数的数组
5 一个有10个指针的数组,该指针是指向一个整型数
6 一个指向有10个整型数数组的指针
7 一个指向函数的指针,该函数有一个整型参数,并返回一个整型数
8 一个指向函数的指针,该函数有一个整型参数并返回一个整型数


参考答案:

int a;
int *a;
int **a;
int a[10];
int* a[10];
int (*a)[10];
int (*a)(int);
int (*a)(int);


33. 在浏览器输入www.didichuxing.com域名,其DNS查询过程是怎样的?请简述DNS查找过程。


参考答案:
1、在浏览器中输入www.didichuxing.com域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。
2、如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。
3、如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/ip参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。
4、如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威性。
5、如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收到请求后,如果自己无法解析,它就会找一个管理.com域的下一级DNS服务器地址(qq.com)给本地DNS服务器。当本地DNS服务器收到这个地址后,就会找qq.com域服务器,重复上面的动作,进行查询,直至找到www.qq.com主机。
6、如果用的是转发模式,此DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把转请求转至上上级,以此循环。不管是本地DNS服务器用是是转发,还是根提示,最后都是把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。


34. 因项目需求,需要将0~2的32次方这个区间的数字保存到内存当中(内存大小为4G),并且可以实现对任意一个数字的增删。(先叙述设计思路,再写出代码)

参考答案:


35. 常见的服务器模型有哪些?你使用过哪些?怎样使用的?


参考答案:

同步阻塞式,多进程,多线程,select+多线程,epoll+多线程, epoll+线程池。

来源:运维派


往期精彩

1、5 种方法查看当前系统登录的用户信息

2、神奇,原来 Linux 终端下居然还有进程记帐功能...

3、这个北京大学生在校园测试5G网络的视频火了!

4、【纯干货】Linux 下各文件夹的结构说明及用途介绍

5、廖雪峰历时3个月打磨出价值1980数据分析教程,终终终于免费啦!!!

6、「 面试题 」Linux运维跳槽必备的60道面试精华题

7、28个企业运维岗经典面试题,你能回答多少?

8、Shell脚本编写及常见面试题

9、必会的 24 道 Shell 脚本面试题



P.S.点击阅读原文可查看更多面试题及面试技巧。


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存