字节终于跳动了!收到提前批意向书了,分享下面经。。。

前前后后加起来一共面了头条7次,下面是面试中的大部分问题,有些忘了。。。

实习面试
简单讲下实习三次面试的算法题:
一面 逆序对
二面 判断回文字符串;两个字符串的最长公共子串;KMP
三面 topk问题以及分析时间复杂度;通过调用一个没有形参的函数,去改变调用函数里面的参数(涉及到函数压栈和ebp的问题);集合的子集

提前批面试
一面:
1.首先自我介绍,然后简单聊下项目。
2.http服务,接收方如何判断数据接受完毕?
3.浏览器输入www.baidu.com的过程?
4.分别说说ARP、ICMP、TCP协议的理解?
5.路由器属哪一层?IP包经过路由器后发生了什么变化?
6.介绍select、epoll的区别?
7.介绍下泛洪?
8.介绍下C++三种智能指针,三种的区别分别是什么?
9.c语言中static的用法?
10.tcp连接、断开的详细过程?每个过程的标志都有什么?
11.平时如何调试程序?断点的原理是什么?
手撕代码
1.链表对折,要求O(1)空间,例如:
将1->2->3->4....->n-1->n->null 对折成 1->n->2->n-1->3->n-2....->null
提问:有什么想问的?
面试感受:共四十多分钟,提前批开始的有点仓促,没怎么准备,很多都答得不好。还得多花功夫复习,不然面试全是好像在哪见过?一面主要偏基础知识,网络考察的比较多。

二面:
1.直接介绍实验室的项目(研究生是电机控制)。
2.写一个电机控制相关算法的函数,然后详细讲解,为什么用这个?有没有其他的算法?
3.结构体的成员调用struct1->num的底层实现?宏定义MAX(a,b)的实现?
4.详细说下http请求的方法有哪些?讲下http的报文结构?
5.说几个http首部的字段?管线化是什么?怎么保证服务器按顺序返回?
6.说下tcp的特点有哪些?详细讲tcp的一些机制?为什么需要这些机制?详细讲tcp报文首部?
手撕代码
1.已知结构体类型和指向某个成员的指针,求结构体起始地址,例如:
struct A {int a; int b;...;int c;...};指向结构体变量a中c成员的指针是int *p。求a的地址?
2.逆时针打印矩阵,例如:
1 2 3
4 5 6 => 147896325
7 8 9
提问:有什么想问的?
面试感受:差不多一个小时,由于晚上刚下班就回来面试,状态不好。二面面试官喜欢考察对问题本质的理解,很喜欢问为什么是这样,面完后长吸了口气。

三面:
1.自我介绍?介绍实习的情况?实习的项目?学到的技术?平时如何学习?
2.实验室的项目?
手撕代码:
1.已知f()函数以概率p输出1,以概率1-P输出0。然后实现g()等概率的输出1和0:
int g()
{
}
进一步通过刚实现的g(),实现等概率输出0-n的函数int h(int n):
int h(int n)
{
}
2.实现Linux命令tail -f filename的函数?(需要检查参数和文件类型是否合格)
int main(int argc, char* argv[])
{
}
提问:有什么想问的?
面试感受:共一个小时,第一个算法题之前在某篇面经见过,但并没有看怎么实现的(面试时心情复杂),面试官提示后还是写出来了。不会tail的实现,心情十分复杂。自己经常看完面经,会侥幸认为我应该不会遇到这种问题。。。

三面面完后,过几天收到通知,说原本的三面面试官有事情,让其他面试官代替面我,现在真正的三面面试官想要重新面试。我当时就感觉,心累!不过既然三面面的不好,这又何尝不是一次机会呢!结果巧了!面试官在实习面试中居然面过我!

第二次三面:
1.都是tcp、http和select、epoll相关的。
2.简历上的项目+实习的学习情况?
手撕代码:
1.二叉树的右视角,例如:
8
5 15 => 8,15,6,7
3 6
7
提问:后面应该没有面试的,有想了解的吗?
面试感受:二十多分钟,这一面感觉很nice,而且也是面试官快结束的时候说,他之前实习面试已经面过我了,我当时真的懵逼了。。。就感觉刚开始这个人好像在哪见过?但完全没有想得到。。。

能记住的一些问题就这些了。周五面完,第二周周三收到的意向书。

说下个人的面试感受:
理解基本的知识点!刷题!坚持刷题!反复刷题!努力和运气55开。。。
必须得吐槽下:找工作好难啊!很累,心理压力大!等待结果也很煎熬!
不过坚持一下!一切值得等待和坚持!祝大家都能收割自己心仪offer!

有个qq交流群:780902027,有需要的朋友可以到里面交流。
#面经##提前批##字节跳动##C++工程师#
全部评论
你这二面有点麻烦啊。,,回文串的马拉车算法,,lcs优化写法,,kmp每一个都挺有思维量的。。。大佬厉害了
点赞 回复 分享
发布于 2019-07-27 14:14
牛逼牛逼
1 回复 分享
发布于 2019-07-27 14:15
哇 真的牛批 不愧是阿里云大神 感觉题目好难啊
点赞 回复 分享
发布于 2019-07-27 14:35
头神牛批啊
点赞 回复 分享
发布于 2019-07-27 14:46
大神你投的什么岗啊
点赞 回复 分享
发布于 2019-07-27 15:09
恭喜恭喜
点赞 回复 分享
发布于 2019-07-27 15:13
大佬字节跳动哪里?意向书是两方么?
点赞 回复 分享
发布于 2019-07-27 16:25
老哥,如何实现tail -f命令啊
点赞 回复 分享
发布于 2019-07-28 10:33
牛逼 看了下还是校友
点赞 回复 分享
发布于 2019-07-29 02:30
周六下午面完的,等待中,楼主赐予我好运气吧
点赞 回复 分享
发布于 2019-07-29 23:06
求问面完多久会告知结果,挂了的话也会通知的么
点赞 回复 分享
发布于 2019-08-15 17:47
字节意向书算是稳了吗?会不会毁约?
点赞 回复 分享
发布于 2019-08-26 23:05
请问楼主,正式批每一面都有手撕代码么
点赞 回复 分享
发布于 2019-08-30 08:47
楼主,这个题怎么做的呀!已知结构体类型和指向某个成员的指针,求结构体起始地址,例如: struct A {int a; int b;...;int c;...};指向结构体变量a中c成员的指针是int *p。求a的地址?
点赞 回复 分享
发布于 2019-09-08 00:15

相关推荐

点赞 评论 收藏
分享
我见java多妩媚:大外包
点赞 评论 收藏
分享
评论
16
172
分享
牛客网
牛客企业服务