【秋招】【字节】八面终上岸,面经分享

中间有两面没总结,遗憾,字节面试贯穿了自己的整个秋招。最终相信,绝大数情况下,坚持一定可以胜利!
  • 一面
  • 1. Session存在哪里,怎么把session_id返回个客户端?
  • 2. Redis的数据结构,它有哪些复杂数据结构?
  • 3. Http与Https的区别,详细描述加密非对称加密的过程
  • 4. 线程与进程的区别?
  • 5. IO多路复用
  • 6. redis服务端是多进程还是单进程,多线程还是单线程
  • 7. top loadaverage怎么计算的
  • 8. hashmap解决冲突的方式
  • 9. 数据库的事务,什么是幻读?事务是怎么实现的
  • 10. linux的命令,如何查看服务器负载?
  • 11. 算法题
    一个长度为n的数组,元素在1到n之间,找到一个重复的元素,空间复杂度越低越好
  • 二面
  • 如何查看端口占用情况
  • 如何查看远程服务器某一个端口被占用
  • 可以ping通,当时客户端连接不上服务端,什么原因
  • 算法题
    1. 最长不重复子串;
    2. 找比当前数大的下一个数,如1243,结果是1324;
  • 数学题
    1. 有三个盒子,其中一个有奖品,参与者选中一个后,主持人打开另一个盒子没有奖品,问参与者是否换盒子,换与不换的中奖概率是?
  • 三面
  • 操作系统包括哪些部分
  • 如何进行内存分配
  • 进程切换发生哪些事情
  • fork函数
  • 项目:分布式如何扩容缩容
  • 算法题
    1. 给定一个升序数组,一个target值,找比target小的最大数字(类似于升序插入排序的一个步骤)
    int begin = 0;
    int end = arr.length - 1;
    int mid = 0;
    while(begin < end){
    mid = begin + ((end - begin) >> 1);
    if(arr[mid] < target)
    begin = mid + 1;
    else
    end = mid;
    }
    //
    end = mid 肯定会更新,但是begin = mid可能就不会更新,必须要begin = mid + 1,推进区间的收缩
  • 一面
  • B树和B+树区别
  • 三次握手,四次挥手
  • 为什么要time-wait
  • java多线程同步
  • 项目:如何避免超卖
  • redis主从同步
  • 操作系统内存为何要分页
  • B+树叶子满了,要添加新值怎么办
  • 5G数据,1G内存如何实现排序
  • 12个球,一个质量不一样,最多称三次,如何称
  • rand(1, 5)实现rand(1, 7)
  • 给定一个target,在升序数组中查找target第一次出现的下标和最后一次出现的下标,找不到用-1代替
  • 二面
  • Spring@resource与 @autowired
  • 操作系统加锁的原理(面试官提示是cpu消息总线)
  • 算法:
  • 链表找环
  • O时间取出栈最小元素
  • 非负整数字符串删除k个元素,使得结果最小
  • 三面
  • 赛马问题
  • volatile关键字
  • 单例
  • Spring AOP
  • 注解的原理
  • OOM的情况
  • Jvm内存模型
  • 算法题
  • 升序数组找绝对值最小的那个值
最后问一下,字节的GIP团队如何,求大佬们透露!
#字节跳动##面经##校招##Java工程师#
全部评论
楼主有实习吗?
1 回复 分享
发布于 2020-11-03 09:03
避免超卖 用信号量嘛?
点赞 回复 分享
发布于 2020-11-02 18:10
八面玲珑
点赞 回复 分享
发布于 2020-11-03 06:29
巨佬
点赞 回复 分享
发布于 2020-11-03 09:21
巨佬
点赞 回复 分享
发布于 2020-11-03 17:27
楼主是研究生还是本科
点赞 回复 分享
发布于 2020-11-04 16:28

相关推荐

点赞 评论 收藏
分享
15 81 评论
分享
牛客网
牛客企业服务