字节java一二三面hr面+已OC
字节一面
自我介绍
说说final,finally,finalize
finalize使用的场合是什么
finally什么情况下不会执行
java异常体系
OOM了解吗?什么情况下会出现OOM?
StackOverflow出现的场景?
垃圾回收算法?各有什么优缺点
熟悉什么数据结构?
二叉搜索树说一下?可以用来干什么?查找的最坏时间复杂度?什么情况下出现最坏?
平衡二叉树和红黑树
java什么底层使用的红黑树?红黑树有什么优势?红黑树的特性?
B树和B+树
mysql中的事务特性
说一下MVCC
mysql索引的底层实现?
Hashmap底层实现原理
手写单例模式(饿汉)+双重检查饿汉式+为什么使用volatile
最后原来是个hard难度的重排链表,面试官觉得前面答的不错直接改成手写快排
(一面55分钟)
字节二面
自我介绍完直接写算法:归并排序并分析复杂度
(上次最后问面试官有什么提高的地方,面试官说基础不错不过因为时间网络和OS都没问,这次果然就大部分问了这俩方面)
TCP三次握手
为什么是三次不是四次或者两次
OSI七层模型
tcp、ip属于哪一层
tcp和udp的区别和使用场景
tcp中的拥塞控制(慢开始,拥塞避免,快重传,快恢复)
进程和线程
进程间通信的有哪些?优缺点是什么
linux底层是怎么创建线程的
f0是个什么东西
hashmap 1.7和1.8
为什么1.8之后变成了红黑树
spring中的ioc、aop是什么?解决什么问题?怎么实现的?
线上一个服务的启动特别慢,你怎么样排查
(二面40分钟)
字节三面
自我介绍
看了看项目和java没太大关系直接问最近在学什么?答并发
有哪几种锁的类型?
synchronized对象锁和类锁的区别
读多写少的情况下有什么改进方式
读写锁会产生什么问题
一个正在读,一个想要写会冲突吗?
线程池的参数
线程池的类型
redis如何保证高可用的
redis哨兵模式
redis怎么保证缓存一致性
mysql索引的实现原理
B+树和B树
mysql联合索引的结构 联合索引失效的场景
mysql主从复制原理
binlog日志的格式?row格式的优点
算法:二维数组中的查找
(算法写完了时间还很早面试官又接着问问题了)
熟悉什么设计模式
动态代理是什么思想,解决什么问题
动态代理jdk和cglib的动态代理的区别
(三面就30多分钟)
hr面
自我介绍,职业规划,团队合作以及多会能入职一周能来多少天,正常答hr面不会刷人的,总体10分钟多一点
这些题目都是面试完回忆的可能有些遗漏,总体还是挺简单的,前面八股文答得好后面算法就出的很简单,希望大家早日拿到心仪的offer!
#实习##字节跳动##面经##Java工程师#