hi,好久不见,这里是小黛
想分享一下秋招提前批和秋招正式批中面试百度的面经,两次都进入了三面,有一次三面面经忘记总结了,因此有五次面经~~~最后也是拿了某部门的大SP offer。
接下来分享一下这几次面试的面经,还有如何去准备类似的面试~
希望可以给小伙伴们帮助~
经验分享
互联网大厂的秋招往往开放的比较早,因此在八月份左右就开始投递了,投递后不久就收到了面试,中间也参与了笔试,这里主要以面试分享为主。
A部门
01 一面
- 面试时间一个小时左右,后续每次面试都是一个小时左右的时长的
- 自我介绍
- 实习a做的几个项目
- 怎么判断和选择什么时候用对外暴露的接口和对内暴露的接口
- 项目中什么情况会用到多态,实际用过么
- 多态的原理
- map和unordered_map的底层实现
- 红黑树的原理,为什么用红黑树
- 哈希表原理
- 智能指针,如何实现
- 智能指针的缺点
- C++11新特性
- 右值引用
- move函数
- 算法题:给一个数字n,求n对括号组成的有效括号的全排列(回溯)
02 二面
- 自我介绍
- volatile关键字
- 智能指针都用过哪些,怎么避免shared_ptr死锁,什么时候用unique_ptr
- 多态的原理
- 构造函数可以是虚函数吗
- 析构函数可以是虚函数吗
- 给出一个类,求size
- stl相关
- vector扩容原理
- vector和map的区别
- map是有序的吗
- map如何实现有序
- mysql索引类型
- 唯一索引和主键索引的区别
- 组合索引
- mysql存储引擎
- mysql的锁
- mysql死锁
- 如何实现隔离级别
- 算法题:反转链表
- 代码题:一个文件,根据url读到url的相关描述,如何设计和编码(k-v结构)
03 三面
- 主管面
- 自我介绍
- 两个实习聊了40多分钟
- 进程和线程间通信
- 大文件如何排序
B部门
01 一面
- 自我介绍
- 浏览器中输入一个url之后的全过程
- 状态码中,4开头的都有什么
- 状态码中,301和302的区别
- 如果http不安全,怎么办
- tcp和udp的区别
- udp在哪分片
- tcp三次握手
- 第三次握手如果没收到怎么办
- 拥塞控制算法
- 设计sql表,如何设计,一个表(存一个人的积分),一个表(存一些货品),如果产生冲突怎么办
- mysql的索引,底层数据结构
- 为啥用b+树,不用普通二叉树
- left join 和 right join 的区别
- 一条sql的执行过程
- c b a会走联合索引吗
- 数据库的锁有哪些
- redis hash数据结构,如何自己实现该数据结构
- hash冲突了如何拓展,如何重构,在不影响使用的前提下
- 算法题:快速排序
02 二面
- 自我介绍
- 介绍实习a
- 介绍实习b
- protobuf介绍,优点,什么时候用,有何好处
- 其他序列化方式
- go和C++区别
- go协程有何优点
- rpc框架
- C++多态,虚函数表,是对象拥有还是类拥有
- 给一个类,64位下,一个int, 一个double, 一个char,求size
- http和https的区别
- 对称加密安全吗
- 为什么要用证书
- 一枚硬币投掷,概率如何凑出5/64
- kmp的复杂度,strstr内置算法都是用的什么
- 赋值操作中,cpu层面的具体流程
- 进程a,hello world,把a的内存发送给了进程b,进程b可以访问这段内存吗
- 进程和线程的区别
- 上下文切换中,线程和进程,二者具体哪些地方不同
- 计算机体系结构由哪些组成
- cpu由哪些组成
- 输入url全过程
- tcp和udp的区别
- 64位和32位的区别
- 32位下,1kw个int,占多大内存,如何对此进行排序,找到前10w大的
- 如果是有顺序的k个数组,如何排序
- 代码题:
- 1)手写shared_ptr
- 2)手写hash map,考虑hash冲突,实现插入,查找,删除
03 三面
这个不好意思,忘记总结面经了,当时面完,因为不打算去,面完就没整理。也是和前面差不多,是主管面,问了问项目、技术,最后做了一道题~
总结
百度作为互联网大厂,其面试也是比较有代表性的,前两轮从不同的角度对技术进行考察,第三轮为主管面,对候选人的综合素质,尤其是项目背景进行考察。具体的每轮面试分为自我介绍+项目/实习+基础知识+算法题,这样的结构组成,还是有章可循的。
准备互联网大厂面试的一点小经验
1)自我介绍
要合理设计自我介绍,在最短的时间内,将自己的背景、技术、项目、实习等内容展示出来,让自己的面试官明确你擅长的方向,知道你的特长,从而开启接下来一个小时的面试。
2)项目和实习
这部分是考察的核心内容,要吃透自己的项目或者实习经历,里面用了哪些技术,完成了哪些需求,其中有哪些创新,有哪些收获和不足。可以事先换位思考,如果你是面试官,会提问哪些问题,进而准备相应的对策和回答。
3)基础知识
这部分没什么好说的,如果距离面试还有一段时间,那完全可以从基础学起,按部就班学习。如果临阵磨枪或者有了一定的计算机基础,可以着重复习某些重点和考点,可以见我之前总结的必考内容。其实百分之90以上的内容,都可以在我的必考内容专题中找到。
4)算法题
这部分,就考察自己的算法思维和编程功底了,平时要多刷题。也提醒一下,除了刷题外,也要注意输入输出、acm模式,如何debug等,也有同学在面试中代码出了问题,面试官让调试运行,然后不太熟悉这一块。或者面试官让自己写几个测试用例,也一头雾水,所以要熟悉这一块的内容,这块是不难的,基本准备一下就可以完美掌握。
最后最后最后,希望这篇经验分享可以帮助到大家,非常感谢!!!
题外话
我秋招求职的时候,关于银行和国企的消息特别少,搜寻到的消息也很模糊,因此,想自己搞个小窝,最核心的诉求和目的就是希望给想去国企央企的(尤其是互联网非常不稳定的当下)学弟学妹一个客观,有用的分享,节约大家的时间,补齐信息差,同时满足自己的分享欲哈哈哈~~
=======================================
本人23年秋招拿了百度sp,美团,中国银行总行,中国银联总部等25个offer,非常欢迎小伙伴和我交流哇,改简历,学习计划,笔试面试经验,免费免费免费~~想来和我交流的随时私聊我呀
#你的秋招进展怎么样了#