第一轮技术面

    • 自我介绍
    • 详细介绍一下自己做的项目
    • 根据项目提了一些问题
    • 问了HashMap的实现原理
    • 数据库B+树
    • final关键字
    • 设计一个榨汁机类,面向对象怎么设计
    • get、post区别,使用场景,幂等性
    • TCP、UDP,分别在应用层有哪些协议
    • 算法题1:数组值为1-n,各出现一次,先加入x(x也是1-n的范围),找出x
    • 算法题2:给定n个节点,以及每个节点上的一个数值,如果两个节点数值的最大公约数大于1,那么在这两个点之间连一条边。求这个图的最大连通分量的节点个数。
    • 智力题:给十桶乒乓球(每桶中乒乓球数量无限),有一个桶的球重9g,其余桶均为10g。找到9g的那桶要测几次,如何测?
      • 如果是桶中只有一个球是9g,那么2-3次,55一次,22一次,如果平衡,则剩下那桶,否则11一次。
      • 如果是桶中所有的球都是9g,那么一次,编号1-10,按编号拿出球的数量,最终少的克数就桶的编号。
    • 你有什么想问的?

    第二轮技术面

    • 聊项目
    • http的各种方法
      • GET、POST、PUT、DELETE
    • http和https的区别
    • https的加密过程
    • 从浏览器输入一个url到生成页面发生了什么,写下SQL
    • Java多线程介绍一下
    • session 和 cookie的区别
    • 介绍TCP
    • 状态码介绍
    • 算法题1:反转链表按k,最长重复子串
    • 算法题2:接雨水(具体不记得了)

    第三轮技术面

    • 介绍下HashMap原理
    • 介绍下红黑树,怎么变为线程安全,锁机制
    • 介绍下JVM
    • 介绍下MySQL,B+树,存储引擎
    • 不使用redis存储session该怎么做
      • memcache
      • db
      • 本地map+uid路由
    • Linux的基本系统指令
    • 如果A给B转账的同时B给A转账,怎么并发量最高
      • 防止死锁:不管谁转给谁,都先锁uid小的。
      • 预扣:设计一个预扣字段,A->B,将A的金额预扣在该字段中,发送一个事务消息。
    • 你有什么想问的吗?

    抖音内推一面

    • 自我介绍
    • 项目介绍
    • 用到了什么rpc框架?那coral是基于什么协议的?
    • http协议的header是什么结构的?
    • TCP和UDP的区别
    • TCP怎么保证可靠传输的?
    • 如果tcp连接断了(比如server宕机),client如何处理?
    • 介绍一下链表
    • 单链表和双链表的区别及应用场景
    • MySQL索引
    • 操作系统和数据库了解么?
    • HashMap的底层实现?
    • 数组存储的元素是什么?
    • 详细介绍一下 put这个方法的执行流程
    • hashcode 返回32位的 int 结果
    • 与数组长度取模(按位与),计算出index,插入index下的链表
    • valatile的作用
    • 如何保证可见性?
    • 算法题:输入一个数据流(4,3,10),请依次输出当前数据的中位数,声明一个链表去存储这些数据,并返回链表的中位数(ON)
    • 给一个很大的log file, 形式是user id, login time, logout time, 如何找到峰值。

    抖音内推二面

    • 聊项目
    • Java的hashmap
    • Java中用到的锁
    • 一个class 中有两个加锁的方法,可以同时分别被不同的线程调用么?
    • 如何保证缓存与数据库读写一致性?
    • 针对千万次每秒的访问,分布式缓存如何实现?主从换从如何保证一致性
    • Git rebase 与 Git merge的区别
    • 算法题:打印二叉树的左边界

    抖音内推三面

    • Java Servlet和Filter的比较
    • 100层楼,给两颗鸡蛋,找到鸡蛋在哪层会破。要求最坏情况下次数最少的方法。
    • MySQL的SQL
    • 多个服务器间共享session的解决方案
      • 分布式KV存储中间件
    • 你学过redis?介绍下redis
    • 二叉树转双向链表

    • 逻辑题:岛上n个人,有人红帽有人白帽,每人只能看到别人头上的帽子,且彼此不能交流,如若确认自己是红帽子的话可以离开岛。有经过的渔民说了一句“你们中至少一人是红帽!”请问接下来发生什么情况?
    • 你有什么想问的吗?

    抖音内推HR面

    • 自我介绍
    • 未来的职业规划
      • 业务沉淀、独当一面
    • 说一下自己平时的学习方法
      • 工作、博客、书籍。线下实践
    • 你认为这些学习方法里最有效的是哪一种?
      • 线下实践
    • 评价一下之前的面试官,或者说之前的面试官有没有给你留下印象最深刻的一点
    • 为什么想要来字节跳动?
    • 你平时都用字节的哪些产品?有什么好的建议吗?
      • 抖音,成就解锁
    • 期望薪资
    • 你有没有什么想问的?