字节抖音后端一面面经

整体顺序:项目--CS基础--手撕代码
项目问的比较多,问到了如果要分布式该怎么处理,负载均衡该怎么办(这里思路基本是被带着走,面试官暗示一点我答一点),性能怎么继续优化
数据库题:怎么实现AB互相转账,加行级锁会产生循环等待死锁怎么解决,代码怎么加行级锁,可不可以用乐观锁(说了下乐观锁的原理)
操作系统:虚拟内存有啥用,怎么把虚拟地址转化为真实地址,堆栈是什么,怎么设计一个堆的数据结构和物理结构方便管理(这里卡了很久,一开始说树,但是树会退化成链表,又说用链表,但是链表搜索不好,面试官苦苦暗示,我终于说到了“树+链表”)
计算机网络:tcp的可靠性是怎么保证的,reno和bbr,除了快重传还有其他的重传机制么,怎么保证不重复帧
撸算法题:
1、阻塞队列
juc的几个函数全忘干净了,只能撸了一个简单的队列,第一次写了一个效率特低版本,被面试官暗示终于写了出来,然后面试官苦苦暗示我该用什么juc函数,but,我是真的忘记了。。。
2、股票买卖
狂喜,直接秒了
面试官真的不容易,很多问题基本都是引导我的思路一步步走下去,奈何我还不争气(拍桌)
勉强给我过了,还跟我说了我前两次字节实习三面挂的原因都是因为“代码没有表现出ACM应有的水平”,事实上我的代码量确实是少,所以平时多写代码多刷题真的很重要。
#面经##校招##字节跳动##Java工程师#
全部评论
加入春招实习群一起交流哈,q群:831410254
1 回复
分享
发布于 2021-02-04 20:00
是手写一个linkedblockingqueue吗
点赞 回复
分享
发布于 2021-02-04 13:21
阅文集团
校招火热招聘中
官网直投
为啥一定要你表现出ACM级别的水平
点赞 回复
分享
发布于 2021-02-04 15:10
数据库的题没搞懂,单纯加行锁,可以在select的时候加for update。 不过实际应该没有这么用的吧。 死锁的话,MySQL有死锁检测,会自动回滚其中一个事务的,这个问题不大。 乐观锁 乐观事务,我了解到的,应该是TiDB支持,其他传统数据库,好像没有支持吧。
点赞 回复
分享
发布于 2021-02-04 16:45
堆管理不就是ptmalloc和jemalloc这种吗,我记得是隐式链表法吧,好像和树关系不大?
点赞 回复
分享
发布于 2021-02-04 18:37
楼主实习还是校招
点赞 回复
分享
发布于 2021-02-04 21:45
校友,加油,冲冲冲
点赞 回复
分享
发布于 2021-02-05 09:52
请问一下字节的春招是已经开始了么?
点赞 回复
分享
发布于 2021-02-05 17:41
楼主你这个是实习吗
点赞 回复
分享
发布于 2021-02-06 03:37
AB互相转账问题我面试被问过,应该是这样的,类似哲学家进餐问题,无论是A转给B,还是B转给B, 加行级锁的时候需要按照次序加锁,比如按照id加锁,优先给id小的加锁,这样就不会有循环等待的问题了
点赞 回复
分享
发布于 2021-02-11 03:50
所以楼主acm什么水平?
点赞 回复
分享
发布于 2021-02-17 13:39

相关推荐

7 74 评论
分享
牛客网
牛客企业服务