面试复盘|字节、百度、虾皮、拼多多,其他面经整理中...


写在前面:

一直以来,从牛客上的面经收益颇多。既然现在稍稍有了一点成绩,想着总结一下分享给大家,如果能对大家找工作有些许的帮助,那也是极好的。
当然了,也希望能攒一波人品,最终能把自己卖个好价钱哈哈哈~
oh,对了,如果有朋友想交流一下,也可以私信给我,我后面也想了解交流一下薪资相关的信息。联系方式就不留在这里了,脸皮儿薄,怕社死。。

先简单说一下背景吧:

  1. 211本,985硕,科班出身
  2. 有一段大厂实习经历
  3. 投的都是后端开发,主要技术栈是C++

已经拿到的offer:

拿到了字节,百度,虾皮等offer
因为准备转正答辩,几乎错过了提前批,现在发现正式批基本没有HC了,投的简历都杳无音信,实属可惜,后悔莫及

面经汇总:

百度:

一面:

1、封装的作用

2、继承的作用

3、多态相关

①多态是为了解决什么问题

②多态的底层实现

③虚函数表和虚指针的具体细节问题,在子类中是怎么体现的?子类的虚函数表、虚指针和父类的有什么关系?

④如果没有多态,B继承A,其中有同名函数,那么B的对象调用同名函数则会调用B本身的函数,而不是A的函数。

4、容器相关

①vector的底层实现原理和扩张策略

②vector的size和容量(capacity)有什么含义

③迭代器是怎么实现遍历、增删操作的?他本质是什么?为什么要封装成迭代器?

5、C++11

①auto的作用?怎么实现的?

②右值引用的作用?

二面:

两个算法题:

1、abbccccaaa压缩为a1b2c4a3

2、链表:将1 2 3 4 5 6变为1 6 2 5 3 4

小问题:

Linux查看进程端口号:netstat,还有一些linux指令top、ps、vim操作之类的

三面:

三面就到经理面了,主要就是谈一些规划、意向之类的。这个就是看自己想怎么聊了。

字节:

一面(也算是直通车终面,结果玩嗨了,裸面直接挂掉了):

算法题是个所有子集的问题

1、sql和DB相关知识

2、http3.0协议

3、计算机网络的五层结构

4、Wifi连接协议在哪一层?为什么?

5、HashMap,C++里的unordered_map底层是怎么实现的?介绍一下哈希表和冲突解决。

6、红黑树和二叉搜索树的区别?各自的优势?

二面:

算法题是二维数组按对角线遍历

1、C++  inline的原理?Inline和虚函数的区别?他们各自的优缺点和适用场景?(比如inline在编译阶段完成,函数在动态链接时起作用)

2、C++智能指针的实现原理?内存回收是怎么实现的?

3、https和http的差别?https是怎么实现加密的?ssl和https的关系?

4、TCP和udp的区别?有哪些应用层协议是基于TCP的(http),哪些是基于UDP(dns域名解析协议)的?理由?

5、对分布式相关的了解吗?

6、平常通过什么渠道学技术?

三面:

算法是个DP问题:

有个环,上面有是个结点,编号为0~9。从0出发,每次走一步,可以顺时针走,也可以逆时针走。问从0出发走n步,最后回到0,有多少种走法?

1、说说操作系统中多进程和多线程的相关知识点(我从引入的角度来说,也讲了资源切换的问题)

2、说说操作系统中的内存管理(我从内存分配和内存回收的角度来说,讲了动态分区算法,内存管理成组链接法,bitmap内存回收,还应该讲一讲虚拟内存)

3、说说网址查询涉及到的知识点


给了一个sql题,没写出来。。

拼多多:

一面:

算法题:

最长上升子序列,O(nlgn)的时间复杂度

问题:

1、介绍一下项目,是否了解一致性哈希负载均衡

2、讲一下编译原理的流程

3、STL里vector、map、unordered_map查找和增删的复杂度

4、STL里unordered_map的底层实现?冲突解决是什么流程?扩容是什么流程?

5、计算机网络:在app上点击一个按钮,后续会经过哪些协议?(替代问题,输入一个域名后的处理流程)

6、网络编程:IO多路复用模型

7、多线程编程:线程池的原理和作用

8、本科时候的比赛,研究生时候的项目

二面:

算法题是一个字符串处理的问题,根据当时聊到的一个场景临时出的题。
这里吐槽一下,拼多多的在线编程是真不好用,自己不能运行,啥都看不到。可怜我一面发挥地那么令我自己满意,正常面下去感觉SP是稳的。
结果在二面挂掉了。可惜可惜。

问题:

面试官对我实习的相关东西很熟,问的都是实习工作周边的问题,可惜系统太大,时间太短,我只对自己的工作比较了解,对其他知识不够深入。
这里要检讨一下自己,还要继续努力。。

场景题:

有24个512G的日志文件,其中每个query有一个唯一的时间戳,内存有256G。

给定一个时间戳的范围,查询出这个范围内的所有query。

虾皮:

一面:


算法:一个dp问题

1、关注数据结构(本科特别熟的哈弗曼树忘了怎么构造了。。离大谱)

2、重点关注计算机网络相关:TCP协议,HTTP协议

3、操作系统:进程间的通信方式

消息队列,管道,共享内存,socket,信号量, 条件变量

主要是消息队列、共享内存、socket的同步机制

4、数据库(太差了):隔离级别

二面:

算法:一个过生日的问题,大概是一个人知道和自己同一天过生日的有几个人,然后输入一个数组,判断满足条件的最少需要几个学生
问题:
  1. 针对实习项目进行深挖,探索,又设计了其他场景考察项目知识点
  2. https的加密过程,秘钥是怎么交付的?这只是客户端对服务端的单端验证,怎么保证双端验证(加上服务端对客户端的验证)?有没有其他安全相关的了解,比如保证内容安全、链路安全?
  3. TCP的三次握手,四次挥手?
  4. 如何判断链表有环?进一步地,如何在最短时间内判断?


HR面:

1、给自己的实习表现打分?给自己的实习公司、实习经历打分?

2、是否有转正的意向?如果拿到了怎么选择offer?

3、当前投递了哪些公司,对其他公司怎么看?选offer会考虑哪些因素?薪资,加班,工作氛围,业务方向等等

个人总结:

从个人体验来说,如果有大厂实习的话,面试官的焦点会对准实习内容。所以一定要把自己的东西理解透彻,包括为什么做、怎么做、有什么难点、做出什么成果等问题。
最后,希望自己能有个不错的结果,也祝愿大家都有好的前程。此致,敬礼!
ps:后续还有面试的话,可能也会继续补充。。
#面试复盘##面经##校招##百度##字节跳动##拼多多##Shopee#
全部评论
牛哇牛哇
点赞 回复 分享
发布于 2021-09-12 00:07
前辈,wifi算链路层?
点赞 回复 分享
发布于 2021-09-14 15:49
牛蛙牛蛙
点赞 回复 分享
发布于 2021-09-14 16:12
大佬,想知道像拼多多这种场景题应该如何考虑呢
点赞 回复 分享
发布于 2021-09-14 17:07
”讲一下编译原理的流程“这是人问的问题吗🤐
点赞 回复 分享
发布于 2021-09-15 14:16

相关推荐

点赞 评论 收藏
分享
评论
7
30
分享
牛客网
牛客企业服务