字节跳动/百度Java后台开发面经:字节跳动面试真心奇怪
一共面了头条、百度两家后台,均经历三面,面经如下。
头条后端 1面:
- java gc
- java class的加载过程
- java hashmap、 为什么用红黑树、红黑树邻接点为啥是8 。
- 拜占庭问题
- 一致性哈希
- 如何控制负载均衡。
- http码 302 403 。
- https 加密过程。
- 操作系统虚存实现原理,交换,覆盖区别。
- paxos算法。
- NP 问题、 举例。
- 缓冲区满异常是什么原因。
- innodb 和 mysalm的区别。
- 堆排序的时间复杂度、空间复杂度、排序的的过程。
- spring问题。
- 算法 : 对一个八位数有三种操作: 加一、减一、反转 。 至少多少次操作可以把一个八位数A变成八位数B。
头条一面后,我觉得自己凉凉了,算法也不会,题目也有些不会。但还是给了二面
头条2面:
- 死锁必要条件
- java如何处理死锁
- 什么是重入锁、 sychronized 和 retrentlock实现区别、锁方法、锁class
- 算法题: 合并区间 快排
- 数据库 os
- timewait close wait
- 好吧,二面算法写个快排, 居然死循环了,调了10分钟没调出来, 真心感觉凉了,但是没想到居然给了三面, 我真是佛了。。
头条三面 :
- 唯一一个技术问题 : 什么是线程安全。
- 代码:写 生产者-消费者 模型
三面一共聊了15分钟,写了15分钟,结束。
三天后收到意向书。
字节跳动真心奇怪, 打扰了,这都能过。
再发个百度java后端面经吧。
百度一面:
- 锁的实现。悲观锁、乐观锁。
- sychronized 和 reentrantlock 实现原理
- volatile原理
- java 设计模式, jdk里用到了哪些设计模式。
- NIO 讲一讲。
- 数据库 两种引擎区别。
- 热备份。
- 四次挥手 越详细越好
- 如果一直都等不到连接会怎么样。
- concurrenthashmap 实现原理。
- 二叉树 转 链表。
百度二面:
- gc
- java longadder
- 数据库 四种隔离级别
- 数据库的索引数据结构 :哈希 、b 树、全文索引。
- 跳台阶
- 手撕 LRU
百度三面
- fanal fanally fanalize 区别、
- final修饰类能继承吗、
- 不用final还可以用什么办法使得这个类不被继承、
- java初始化的顺序 :
- java锁机制、sychronnized 和 lock的区别
- 自旋锁 是公平吗?
- 自旋锁 怎么才能公平。
- 客户抱怨你们网站太慢,怎么排查问题?
- tcp 三次四次
更多高级Java必考题与答案
答案获取方式
关注+点赞后,戳这里,暗号:****即可获得详细答案链接!
重要的话讲两遍,点赞、点赞后再发私信,才可以拿到哦!