字节跳动 后端面经

终于收到意向书了

一面


1.自我介绍、项目介绍
2.中间人攻击
3.TCP/UDP区别(很详细),发送一个UDP包在网络中的过程(我是从OSI模型从上到下、分别用到哪些协议、然后协议的运转过程讲的)
4.MySQL索引 hash索引与B+树索引的优缺点,分别适合什么场景
5.sendfile、mmap
6.buffer与***的区别
7.进程通信方式,说说各种方式的区别
8.epoll LT、ET,适用的场景
9.算法:复原IP地址

二面


1.自我介绍、项目介绍
2.看项目里用到了很多分布式的东西,如果是你,要怎么设计一个分布式系统?(很详细,一直深入)
3.定时任务系统怎么设计?
4.介绍下MySQL的引擎
5.csrf攻击怎么防范
6.topk问题(比较详细,不断问有没有更好的方法…)
6.算法:二叉树的左视图

三面


1.自我介绍、项目介绍
2.介绍下ES,是怎么使用的
3.SQL注入怎么防范
4.算法:合并区间
5.算法:二维递增数组找指定数是否存在(找了下leetcode,是74题)
[1,2,3]
[4,5,6]
[7,8,9]
从左下角开始找(n行m列最多就找n+m次),面试官看我写了两个循环立马喊停,说有没有复杂度更低一点的方法。
想了一会儿说用两次二分,达到logn + logm,对行先作二分找到所在的行,然后对该行进行二分。面试官又问能不能一次二分解决。
面试官引导了下,因为是二维递增数组,数组的下标也符合递增的规律,所以对下标做二分就可以一次二分完成了。
6.有什么想问的,个人规划之类

总结


感觉我的三轮面试还是分明的。第一轮面基础,操作系统、计网、数据库之类;第二轮可能有点像压力面,考验知识的运用;第三轮主要考的是思维能力,能否有清晰的逻辑来解决问题。感觉每一轮最重要的就是Show me the code。特别是三面,面试官能力很强,看了代码马上就能知道你的思路… 所以思路一定要想清楚再写

#面经##秋招##字节跳动##校招#
全部评论
恭喜恭喜
点赞 回复 分享
发布于 2019-08-29 22:44
祝贺祝贺
点赞 回复 分享
发布于 2019-08-29 22:53
楼主哪里的岗位呀,我18号面的,广州后台到现在没信
点赞 回复 分享
发布于 2019-08-29 22:58
沾沾喜气
点赞 回复 分享
发布于 2019-08-29 22:59
因为是二维递增数组,数组的下标也符合递增的规律,所以对下标做二分就可以一次二分完成了。不是很理解,怎么一次二分?
点赞 回复 分享
发布于 2019-08-29 23:07
好强。。
点赞 回复 分享
发布于 2019-08-30 12:40

相关推荐

牛客5655:其他公司的面试(事)吗
点赞 评论 收藏
分享
11-05 07:29
贵州大学 Java
点赞 评论 收藏
分享
10 110 评论
分享
牛客网
牛客企业服务