一面没有问项目,全都是问的基础
1、C++能否在有参构造函数中调用无参构造函数,无参构造函数中如果有修改类成员会不会对当前正在构造的类产生影响,这种调用方式有什么优势或者缺点。
2、C++的构造函数中能不能调用虚函数
3、指针和引用的区别,你更倾向于使用指针还是引用,为什么
4、C++vector插入和删除为什么会导致迭代器实效
5、哈希表的实现原理
6、在插入多查询少时使用哪种数据结构
7、在插入和查询差不多的情况下选择哪种数据结构
8、什么情况下会出现段错误,为什么段错误程序会直接终止
9、C++的左值和右值,怎么使用,有什么区别
8、TCP建立连接和断开连接的步骤
9、什么场景下机器产生大量的time_wait,有什么影响
10、TCP怎么保证可靠性
11、topK用什么排序解决
12、一个32为的机器,有一个100G的文件,里面存储的是数字,要对这个文件进行排序,选择哪种排序方式,怎么实现
13、进程和线程的区别
14、你更倾向于使用多线程还是多进程,为什么
15、虚拟地址空间的作用,怎么从虚拟地址空间转换到物理地址空间
16、内存物理页置换算法
17、介绍一下IO多路复用
18、除了select,poll,epoll,如果让你实现第四种IO多路复用,你会怎么设计
19、算法题
两个一组翻转链表
二面(1h)
Bigo二面纯做题,做了三道题
1、 实现memcpy,考虑函数的鲁棒性
2、 最大连续子序列和,输出这个序列
3、 实现一个实时投票排名系统,用户有两种,一种是投票的用户,每人有一票,另一种是候选人,并且有一个函数,返回获得票数实时排名前100的用户,返回的这100个用户也要有序。
三面(1h)
1、介绍项目
2、项目中怎么保证数据传输的可靠性
3、网络断开怎么感知,有没有处理,如果两个连接断开了但是没有数据交互怎么感知断开
4、socket调用write返回值表示的意义
5、socket的keep_alive的时间间隔
6、网络发送数据的编码方式
7、网络字节序用的是大端字节序还是小端字节序
8、怎么用程序判断一个系统是大端字节序还是小端字节序
9、智力题
四个人过桥,每个人过桥花的时间是1,2,5,10分钟,每次过两个人,并且过桥必须有手电筒,手电筒只有一个,过桥时间按照最慢的人算,四个人全部过桥的最短时间
10算法题
全部评论
(14) 回帖