百度2021春实习C++软件开发一面面经

在得到百度笔试过了的消息之后,就预约了一面的面试时间,定在了28号的下午两点。但实际时间提前了一个小时,还是面试官主动找我提前面试的。

  1. 上来先是一段简单的自我介绍
  2. 代码考核:手撕哈希表,我用vector实现了一下,但是在处理关键字相同的地方出了点小问题。(本来是让我写一个多线程的哈希表的,但本人太菜了,不会。。。。)
  3. 然后问到了项目,我介绍了一下自己在项目中的负责的部分。
  4. 借由项目问到了网络,让我说一下客户端和服务端连接的过程(TCP的三次握手)。
  5. 假设第三次握手,客户端没有给服务端返回确认信息,服务端会有什么反应(超时重传)
  6. TCP有哪些机制可以保证它是可靠的(确认机制、校验和、序列号、流量控制、拥塞控制)
  7. 假设客户端给服务端发送的包数据中间某个序列号丢失,服务端会怎么做(服务端接没有收到丢失包时,不会给客户端发送ack,客户端一直收不到服务端的ACK确认信息,则会重发丢失的包)
  8. 进程与线程的区别
  9. 多个线程共享一个进程的资源的原理是什么
  10. 进程间通信的方式除了共享内存还有哪些
  11. 有没有过多线程的编程经历
  12. C++中移动构造和拷贝构造之间的区别(移动构造我之前都没听说过。。。)
  13. 是否知道智能指针,说下shared_ptr与其他智能指针的区别

一面大致是45分钟左右,大部分都做出了自己的回答(有些答的比较模糊),也有几个问题不会。等结果吧(估计是GG了)

猜你喜欢

转载自blog.csdn.net/Immaturecld/article/details/115300751