三面字节拿offer面经:JVM+GC+网络+redis+IO+红黑树+数据结构

1496 篇文章 10 订阅
1494 篇文章 14 订阅

5G的到来证明了互联网行业发展一如既往的快,作为一名开发人员(Java岗)梦想自然是互联网行业的大厂,这次有幸获得面试字节跳动的机会,为此我也做出了准备在面试前一个月就开始做准备了,也很荣幸的拿到了字节跳动的offer,这里分享一份字节跳动三面过程!

字节一面:

hashmap,怎么扩容,怎么处理数据冲突?怎么高效率的实现数据迁移?

Linux的共享内存如何实现,大概说了一下。

socket网络编程,说一下TCP的三次握手和四次挥手

同步IO和异步IO的区别?

Java GC机制?GC Roots有哪些?

红黑树讲一下,五个特性,插入删除操作,时间复杂度?

快排的时间复杂度,最坏情况呢,最好情况呢,堆排序的时间复杂度呢,建堆的复杂度是多少

字节二面

自我介绍,主要讲讲做了什么和擅长什么

设计模式了解哪些?

AtomicInteger怎么实现原子修改的?

ConcurrentHashMap 在Java7和Java8中的区别?为什么Java8并发效率更好?什么情况下用HashMap,什么情况用ConcurrentHashMap?

redis数据结构?

redis数据淘汰机制?

字节三面

mysql实现事务的原理(MVCC)

MySQL数据主从同步是如何实现的?

MySQL索引的实现,innodb的索引,b+树索引是怎么实现的,为什么用b+树做索引节点,一个节点存了多少数据,怎么规定大小,与磁盘页对应。

如果Redis有1亿个key,使用keys命令是否会影响线上服务?

Redis的持久化方式,aod和rdb,具体怎么实现,追加日志和备份文件,底层实现原理的话知道么?

遇到最大困难是什么?怎么克服?

未来的规划是什么?

你想问我什么?


以上就字节跳动后端研发面试题,以下该面试题的部分参考答案。

金九银十跳槽季,小弟为各位大哥准备了几份面试宝典:

  • 一份是技术干货《Java核心知识点整理》
  • 一份是面试真题《1000道互联网Java工程师面试题》
  • 面试宝典《互联网Java工程师面试题大全》

Java核心知识点整理

1000道互联网Java工程师面试题

互联网大厂面试宝典

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值