5G 的到来证明了互联网行业发展一如既往的快,作为一名开发人员(Java 岗)梦想自然是互联网行业的大厂,这次有幸获得面试字节跳动的机会,为此我也做出了准备在面试前一个月就开始做准备了,也很荣幸的拿到了字节跳动的 offer,这里分享一份字节跳动三面过程!
字节一面:
-
hashmap,怎么扩容,怎么处理数据冲突?怎么高效率的实现数据迁移?
-
Linux 的共享内存如何实现,大概说了一下。
-
socket 网络编程,说一下 TCP 的三次握手和四次挥手
-
同步 IO 和异步 IO 的区别?
-
Java GC 机制?GC Roots 有哪些?
-
红黑树讲一下,五个特性,插入删除操作,时间复杂度?
-
快排的时间复杂度,最坏情况呢,最好情况呢,堆排序的时间复杂度呢,建堆的复杂度是多少
字节二面
-
自我介绍,主要讲讲做了什么和擅长什么
-
设计模式了解哪些?
-
AtomicInteger 怎么实现原子修改的?
-
ConcurrentHashMap 在 Java7 和 Java8 中的区别?为什么 Java8 并发效率更好?什么情况下用 HashMap,什么情况用 ConcurrentHashMap?
-
redis 数据结构?
<