记一次字节跳动后端实习的面经

记一次字节跳动后端实习的面经

一面

算法题:

给定一个数组,求数组中第二大的值

例子1: nuns[1,2,3,4,5] 返回4

例子2: nums[1,2,3,5,5] 返回3

  1. GC垃圾收集器
  2. GC收集算法
  3. TCP的四次挥手
  4. 为什么不是三次,为什么不是五次
  5. Java有哪些锁机制
  6. volatile的含义
  7. 如何实现静止指令优化重排
  8. 多线程默认如何修改共享的变量
  9. 阻塞队列有哪几种
  10. 死锁的原因,必要条件及解除方式
  11. Java的四种引用
  12. Http1.0,1.1,2.0的差别

二面

算法题:

一群人围成一个圈,依次1,2,3报数,数到3的人出列,求最后出列的那个人的编号

  1. Java中的容器
  2. 安全的容器
  3. hashmap的底层实现
  4. 线程池的七大参数
  5. 线程池何时创建非核心线程
  6. 核心线程会销毁吗
  7. 静态内部类与普通内部类的差别
  8. 单例的实现
  9. 单例内部类这种实现方式的优势
  10. IO多路复用

三面

算法题:

一片空地,画了N个连续的方格,每个方格上随机填上了一个数字,大家从第一个格子开始,每次可以向后跳不超过当前格子上的数的步数,大家开始就此比赛,看谁跳到最后一个格子的步数最少。

  1. tcp的三次握手
  2. 网络的请求报文格式
  3. 网络的回答报文格式
  4. 常见的返回码及含义
  5. HTTP2.0的头部压缩如何实现
  6. 聊天相关

四面

算法题:

给一个二叉树和n。求第n行的结点个数

  1. 怼项目
  2. 网络的分层
  3. 一个数据包从应用层开始,每一层做些什么操作
  4. 传输层会分包吗
  5. 网络层的协议
  6. 传输层的协议
  7. 聚簇索引是什么
  8. linux的IO多路复用
  9. 最左匹配原则
  10. 一个SQL题:

一个表中有:id,student_id,score,class_id。求总分最高的十个

  1. HTTP2.0的服务器推送的方式

你可能感兴趣的:(记一次字节跳动后端实习的面经)