百度校招C++开发面试经验

📁 软文 #百度算法

本头条号目前已经发布了10多篇面试经验和知识点总结,你如果仅仅收藏了本篇,既错过了之前的好文,也将与之后的精品无缘,最好的办法是关注本号,关注本号,关注本号。

有需要社招内推阿里巴巴(包括蚂蚁金服等)的请发简历到我的邮箱(邮箱地址请私信我获取,头条不允许把邮箱直接放在文章里)。注意是社招,工作年限1年以上,非技术类的也可以内推。

一面

1.给一个先序序列,重构完全二叉树,如果是一般二叉树能不能重构,为什么?

2.有三个消息队列,随机的向三个队列插入元素(概率可能不同),如何保证插入和查找的高效?

3.最长公共子序列

4.vector的拷贝,swap函数交换指针

5.线程与进程区别,优缺点,进程内存模型

6.IPC有哪些,共享内存原理

7.说一下LRU cache思路

8.赛马问题,36匹马,6个赛道,找出最快6匹马的最小赛马次数,如果是n匹马,m个赛道呢?

二面

1.虚函数实现机制

2.内存模型影响因素(内存对齐,多重继承下的内存模型,菱形问题,虚拟继承内存模型,虚拟继承是如何处理的)

3.NRVO优化,右值引用

4.extern C作用,为什么需要

5.C++重载,name manging机制

6.Epoll与Select区别以及epoll优点,为什么一般情况下epoll性能比select好,ET模式与LT模式

7.如何用epoll实现高并发,多线程,线程池,线程惊群问题

8.二叉树先序遍历,递归,非递归,如何用O(1)空间实现(morris 遍历)

9.互斥锁的实现原理(屏蔽中断,CAS),读写锁实现

三面

1.TCP拥塞控制,滑动窗口协议,糊涂窗口

2.虚拟内存机制,二级页表,TLB快表,缺页,swap

3.操作系统调度算法

4.TCP如何保证可靠性,四种定时器,time_wait如何解决,Nagle算法

5.一致性算法(raft),一致性哈希