字节跳动抖音直播实习面经(已OC)
在牛客上看了很多面经,是时候反馈社区啦~
内推的是抖音直播钱包组,base杭州,一面二面过了,三面leader面挂了,扭转到抖音直播服务架构组,base北京,已过,Offer Call了。
先说下算法题吧。
#抖音钱包组一面 找到二叉树的路径和为target的所有路径并打印出来(不一定是从根节点出发)。
#抖音钱包组二面 最长回文串;全排列。
#抖音钱包组三面 三个线程依次轮流打印ABC,打印100次;leetcode842,将数组拆分成斐波那契数列。
======== 找HR扭转到其他组========
#抖音直播服务架构组三面 排序两个有序链表。
#钱包组一面(2022.2.22)
一面面试官是个巨佬。
自我介绍。
part1,项目。问的很细腻,为啥用到消息队列,如果解决消息重复和消息丢失问题;自己如何设计一个消息队列保证一个消息不会重复消费。如何保证你的项目高可用?项目为什么要使用N-Tree,不用有什么影响吗?
part2,基础。面试官也懂java,问了java相关。HashMap原理,扩容机制以及ConcurrentHashMap对比;HashMap如果存入元素很多会溢出吗怎么解决;volatile关键字作用以及和synchronized区别;线程池七大参数以及工作原理;阻塞队列了解过吗?(这里我答的很深,从ReentryLock到AQS那套全部说了涉及到些源码)。死锁了解吗?谈谈死锁的必要条件?在项目中解决过死锁的问题吗?垃圾回收算法了解吗?老年代回收担保机制是什么?JVM对象什么时候被回收,G1垃圾回收器回收原理;G1用户自己设置停顿时间的参数是什么?GC Roots有哪些? CMS和G1区别在哪?
part3,算法题。算法题hard,挺难的,找到二叉树的路径和为target的所有路径并打印出来。(注意,不一定是从根节点出发),AC。
#钱包组二面(2022.2.23)
自我介绍。
二面面试官问的很细腻。
part1,全部是基础,没问项目,一面面试官问过了。
首先问数据库,MVCC;给了个sql,具体不记得了,问走了索引没,为什么?又写了sql,具体不记得了,问加锁没,加了什么锁? mysql的悲观锁和乐观锁怎么实现的?为啥用B+树索引,B树索引有什么好处?Hash为啥不建议做索引数据结构?计算机网络,计算机网络五层模型;http请求报文和响应报文包含了哪些?https和http默认端口号是多少?https和http区别是什么?post请求了解吗其和get请求的区别是什么?Redis的zset,set,hash,list,string的底层数据结构,以及应用场景。跳表原理,hash用在购物车会出现什么问题?zset怎么使用,自己设计一个场景题使用zset;set实现给帖子点赞如何设计key和value?堆排序如何实现?令牌桶算法了解吗?实现排行榜的zset指令是什么?(zrangebyscore)。
part2,算法题。最长回文串;全排列,AC。
#钱包组三面(leader面)(2022.2.24)
自我介绍。问了项目不敢兴趣,直接做题。
三个线程依次轮流打印ABC,打印100次,说实话一直忙着刷高频和记八股,这种基础题写了半天没AC。换道新题,将数组拆分成斐波那契数列,基本思想是回溯,但也没AC。
智力题,一个卡车可以装多少个乒乓球,给个数量级。
聊天,问最近6年来自己认为最成功的事情是什么?
题没AC,挂了。
#扭转到直播服务架构组三面(leader面)(2022.2.25)
自我介绍。
直接做题,排序两个有序链表,AC。
智力题,问公交车15分钟来一趟,请问等5分钟等到公交车等概率是多少?我答的是使用指数分布去计算,面试官觉得还行。
问OS,怎么看虚拟内存,我这里也给他答了很深,把八股串起来了,面试官觉得还行。
问计算机网络,从浏览器输入一个url到渲染到浏览器这之间经过了哪些缓存。我答了DNS缓存,架构,以及业务代码的缓存。
2022.3.3
HR说今天下offer,真的太不容易啦~
引流#面经##字节跳动#计算机网络#操作系统#数据库#抖音直播#Java#