百度- C++后端开发
百度-后端开发-一面 3.19 (13:50 - 14:30)
- 自我介绍
- 介绍阿里天池比赛,面试官觉得我们做的这个比赛挺有意思的。
- 比较 C++ 和 go
- 设计模式,工厂模式,单例模式
- 从应用层到物理层,介绍每一层在干啥
- 线程和进程区别
- 自旋锁和互斥锁的实现
- 内存管理:介绍进程地址空间,分段。页面管理的 buddy 系统 + slab分配器
- 介绍 b+ 树
- 写 sql,给一个学生表,包含课程号,成绩,学生id,要求top 10 平均成绩最高的学生 id
- 写 shell,一个文件,找出现频率最高的 10 个 ip。
做题:旋转数组中的最小值
二面 3.19 (14:40 - 15:15)
- 自我介绍
- 讲了讲为什么会去学 15-445,6.824
- 介绍存储项目
- 事务的加锁解锁,介绍了percolator模型,然后解释了下加锁操作怎么做的
- new 使用场景,怎么去分配
- shared_ptr, unique_ptr,weak_ptr 使用区别
- vector 和 list 的底层实现
- 互斥锁的实现
做题:翻转链表的某个区间的节点
三面 3.19 (15:50 - 16:30)
- 能实习的时间
- 按着简历的时间线一个个项目问了下。
- 期望进来后做什么?
- 看我本科通信的,为什么会做存储项目?
- 主要问天池比赛,分工问题,遇到问题怎么解决,问比赛优化。问我职业发展。。。
- 问我工作和在学校有什么区别
- 问我个人的优势和劣势
等通知,三面面试官说应该是hr随机分岗位了。
岗位分配
感觉就是乱分配的,一会IOS客户端开发,一会后端业务开发。。。懵逼