字节跳动Java提前批三轮面经
关注回复“1”,即可获取上千篇面经集合pdf
面经内容
【一面】
1. 自我介绍 + 讲论文+ 实习项目 20mins
2. java gc 流程
3. git merge 解决冲突
4. redis 链表底层实现(不会)
5. b tree和 b+tree区别
6. 银行家算法
7. tcp udp区别
8. 数组指针和指针数组
手撕1 倒数第k个结点
手撕2 路径之和
【二面】
1. 自我介绍
2. 实习项目
3. 如何发送消息 不重复不漏
4. 介绍ob
5. jdk1.8特性有哪些(面试官补全)
6. 4种函数式接口
7. flatmap操作
8. 函数式编程-惰性计算(没听过)
9. future callable
10. 线程池参数+拒绝策略
11. 双亲委派 + 其优点
12. 单例模式volatile的作用,如何实现的内存可见性
13. 线程的工作内存对应的硬件在哪(l1、l2高速缓存)
14. 设计聊天功能
未读消息列表,时间倒序
点进会话,定会上次已读位置
未读消息需要显示其未读的数量
要求:需要设计哪些表,哪些必要字段 单聊如何实现 群聊如何实现
15. leetcode628 三个数的最大乘积 https://leetcode-cn.com/problems/maximum-product-of-three-numbers/
感觉面试官java很强,最后一问美团做了几年java开发
【三面】
1. 自我介绍
2. 实习项目最想介绍的
3. 实习项目中可以优化的
4. 你比别人的优点 举例子
5. 写题
leetcode stoi(改版)
飞书写代码不能调界面?太小了,好难受