Bootstrap

2020年下半年最新:字节跳动“算法面试题汇总”让你面试没压力

注:本场面试在疫情期间三月份拿到的字节offer

基本条件

本人是底层 211本科,无科研经历,但是有一些项目经历,在国内监控行业某头部企业做过一段时间的实习。想着投一下字节,可以积累一下面试经验和为春招做准备.投了简历之后,过了一段时间,HR 就打电话跟我约时间,在年后进行远程面。

说明一下,我投的是北京 office。

一面

面试官很和蔼,由于疫情的原因,大家都在家里面进行远程面试。

开头没有自我介绍,直接开始问项目了,问了比如

  • 常用的 Web 组件有哪些(回答了自己经常用到的 SpringBoot,Redis,Mysql 等等,字节这边基本没有用 Java 的后台,所以感觉面试官不大会问 Spring,Java 这些东西,反倒是对数据库和中间件比较感兴趣)
  • Kafka 相关,如何保证不会重复消费,Kafka 消费组结构等等(这个只是凭着感觉和面试官说了,因为 Kafka 自己确实准备得不充分,但是心态稳住了)
  • Mysql 索引,B+树(必考同学们)

还有一些项目中的细节,这些因人而异,就不放上来了,提示一点就是要在项目中介绍一些亮眼的地方,比如用了什么牛逼的数据结构,架构上有什么特点,并发量大小还有怎么去 hold 住并发量

后面就是算法题了,一共做了两道

  1. 判断平衡二叉树(这道题总体来说并不难,但是面试官在中间穿插了垃圾回收的知识,这就很难受了,具体的就是大家要判断一下对象在什么时候会回收,可达性分析什么时候对这个对象来说是不可达的,还有在递归函数中内存如何变化,这个是让我们来对这个函数进行执行过程的建模,只看栈帧大小变化的话,应该有是两个峰值,中间会有抖动的情况)
  2. 二分查找法的变种题,给定target和一个升序的数组,寻找下一个比数组大的数.这道
;