写点什么

字节跳动这份面试题,你能打几分

用户头像
Java 白
关注
发布于: 25 分钟前

 


点击并拖拽以移动


最近这段时间,身边的一个朋友刚刚拿到字节跳动的 offer,一起来复盘一下他的 offer 之路,希望能给正在看机会的你有所帮助。

这次面试总共经历了四轮,这四轮面试都是视频面试,其中前三轮是技术面试,最后一轮是 hr 面试。

前三轮技术面试都有一个手动写代码的环节,在牛客网上写。情况也不完全一样,有的是先写代码后面试,有的是先聊一会儿再写代码。

首轮面试

1.1 算法题

开始首先一道算法题,题目是链表上的数字相加。题目类似下面这道 leetcode 题。

https://leetcode-cn.com/problems/add-two-numbers/

这道题截图如下:



点击并拖拽以移动



点击并拖拽以移动


笔试题跟上面这个非常类似,不一样的是字节的问题中,每位数字不是按照逆序的方式存储的,而是高位在前,低位在后。

解题思路:

  • 链表反转相加后再次反转

  • 从前往后遍历,从后往前相加,需要记录前置节点。

1.2 java 基础

主要是以下几个方面:

  • AQS,基于 AQS 扩展的几个类

  • 多线程,并发编程,问了很多

  • hashmap,问得比较多,类似数据结构、线程安全、哈希冲突、转红黑树、负载因子

  • ConcurrentHashMap,底层结构,怎么提高并发能力等

1.3 计算机网络

主要是以下几个方面:

  • tcp/ip

  • http

二轮面试

2.1 算法题

开始首先一道算法题,随机链表复制。

题目大概如下:

每个节点除了 key,value 和 next 元素外,还多了一个 random 指针,这个指针随机可以随机指向表内任意元素,要求空间复杂度为 O(1),新复制一个一模一样的链表出来。新链表所需要的空间不计入空间复杂度.

2.2 java 基础

  • 无锁并发

  • synchronized

  • ArrayList

  • jvm,主要是垃圾收集器,垃圾收集算法。

2.3 mysql

  • 索引结构

  • sql 语句执行顺序

  • 执行计划。

2.4 redis 相关

  • 常用数据类型及底层数据结构

  • 主从同步

  • 响应变慢的原因

  • 切片集群如何路由等等

第三轮

3.1 消息中间件

主要是问熟悉哪些,如何保证消息可靠性。

3.2 计算机网络

http1.0、http1.1、http2.0、https 基本都问了一下。

3.3 项目经验

这个主要按照简历中写的项目进行提问,问得不算太多。

3.4 一道算法题

分数的循环小数展示,题目如下:

给你任意两个整数,这两个整数相除的结果使用小数进行表示,如果出现循环小数,则找出循环小数,然后用括号括住循环的数字。例如,1/3=0.(3),3 就是其中的循环小数,需要打括号。

HR 面

第四轮面试是 HR 面试,到了 HR 这一轮,基本就过了。

4.1 基本问题

主要问一些学历相关信息,履历相关信息,感觉是在确认简历的内容是否真实。

4.2 职业规划

这个跟 HR 聊了一会儿,主要侧重未来 5 年的规划等等。

4.3 薪资

这块儿应该是大家最关心的。

说实话,字节还是挺舍得给的,这点真的不像某些公司。而且 HR 还尽量帮自己申请,甚至高出自己的预期。

这里主要想分享的是股权这一块儿,HR 会问自己选择股权还是选择现金。

比如每年给 100 股,4 年就是 400 股。如果按照每股 1000 元人民币,大概 40 万。还是不小的一个数字。分四年解冻的话,第一年解 15%,第二年 25%,第三年 25%,第四年 35%。

如果能坚持 4 年,股权翻一倍,也可以多拿 40 万,也是很不错的。

最后就是年终奖,HR 说一般是 0~6 个月,普通是 3 个月,这个也是在总包里面的。所以呢,月薪=(总包年薪-期权/4)/15

根据自己的实际情况来就好。我个人还是期望拿现金。

写在最后

从上面的技术面试题看来,字节的面试还是非常注重基础的,其实题目并不难,比如算法没有考到 DP 算法。多加准备应该是没有问题的。题目并不要求百分之百会,能答对百分之八十应该也就差不多了。

不同的部门和团队面试的问题难度肯定是不一样的,运气也很重要。

这次面试的一个奇怪的地方在于,框架方面的问题基本没有问,比如 spring 相关的各种框架三轮技术面都没有问到。这个可能是跟面试官有关系。

最后,面试环节也是快速变化的。但只要我们平时工作学习中多加以积累和总结,慢慢减小自己的技术盲区,算法多写多练,应该是能应对的。

在即将到来的金九银十季中,祝求职的人都能拿到心仪的 offer。

有需要 Java 面试资料 文档的小伙伴可以加 v:XIaonan00000621 领取

用户头像

Java 白

关注

还未添加个人签名 2021.06.21 加入

Java使我秃头

评论

发布
暂无评论
字节跳动这份面试题,你能打几分