百度面经(C++/php)
投百度的经历非常坎坷,想写出来和大家分享一下,希望能带给和我一样准备不是非常充分(无对口项目、无实习经历、渣硕算法中途转开发)的同学一些信心。
百度一开始是想找学弟内推的,但是我投的比较晚(9月份),已经错过了内推的时间,因此就直接到官网上去投简历了,走的是正式批的流程。做笔试题的时候,三道算法题只做出来第一道,之前经历了腾讯一面挂、字节笔试挂(补招的时候被捞一面挂)、京东笔试后没消息、美团简历挂,滴滴笔试完没消息(后来有面试并且收到了oc),觉得进面试拿到offer的希望也不大,所以就提前交卷,放弃挣扎了。最后意外收到了远程面试的邀请,运气到了拦也拦不住。
面试的时候除了算法题,其他被怼成弟弟,没想到面试官给过了,一天面完三面并且一周之后收到了oc,觉得自己非常的幸运,终于得到了大厂的认可(虽然是颗白菜)。这里建议牛友如果有自己亮点的话,还是可以勇敢大胆的尝试一下大厂,毕竟除了实力之外,运气与机遇也占很大成分,遇到欣赏你的面试官,就会比较顺利。
最后献上百度的三面面经~
一面:
1、53个人中,任选3个人至少有两个人生日相同的概率。
2、旋转数组找最小值?(手撕)
3、10亿个IP,取出频次出现最多的TOP10个IP?(思路题)
4、某进程创建了若干线程,这些线程不能共享的是?(选择题)
5、TCP的粘包问题有哪些解决方案?(选择题)
6、滑动窗口是用来干什么的?
7、soket调用接口?
8、网络库有用过哪些?
9、IP层如何找MAC地址?如果对应IP不在局域网呢?
10、网桥?虚拟设备对?
11、ARP攻击,ARP欺骗?
12、Linux静态库和动态库有什么区别?动态库的加载器是哪个?
13、glibc是干什么的?
14、常见的hash算法?
15、一致性哈希如何优化?
16、Linux常见的信号有哪些?
17、kill -9?进程组?Group ID和PPID什么区别?
18、有什么问题要问的?
二面:
1、自我介绍?
2、很大数组中找第K大元素?
3、项目相关?
4、比较擅长什么语言?脚本性语言?
5、socket编程?
6、三次握手?
7、UDP数据包长度多少?
8、研究经历?
9、最近看的书?
10、对Linux环境的了解?
11、进程的状态有几种?
12、http头部方法GET?POST?其他的有了解吗?GET和POST的区别?POST可以在URL中携带参数吗?
13、你觉得你优势的地方?
14、平时学习开发过程中遇到什么困难?
15、发表了几篇论文?
16、进程和线程的区别?线程池?
17、多线程要注意什么问题?
18、mysql有了解吗?
19、数据库少了某些字段,现在要让你加,你怎么办?设计上有没有考虑可扩展性?
20、cookie有存什么东西吗?
21、有什么想问的?
三面:
1、项目?项目难点?花了多久时间?
2、有了解哪些最短路算法?如果速度不够,你要怎么优化?
3、最近在看哪些书?
4、平时关注哪些技术?
5、进程与线程的理解?什么时候用进程什么时候用线程?
6、微信搜索附近的人怎么设计?
7、写个shared_ptr的实现?(手撕)
8、说一下平时的一些学习习惯?
9、团队沟通能力?
10、遇到的最困难的事情?
11、你有什么优势?有什么缺点?
12、服务器宕机?怎么排查错误?
13、对于OFFER怎么选择?考虑哪些因素?
14、有什么想问的?
#百度##校招##C++工程师##面经#