字节飞书后端面经

面试官准时到,不过面试官看起来很累且不耐烦,问了半个小时的项目和八股就开始撕题,两道分别是K个一组反转链表和编辑距离(leetcode原题),都做出来了。面试完也没有反问,就说时间到了就把会议关了,感觉又是KPI,就不能给我一次正常的面试吗

全程根据简历提问,也没有深挖。题目记不太全了,零星记录一下:

1. 问实习,印象深刻的是什么,遇到了什么难题,用什么方法解决的
2. 基于跳表的数据库,你是怎么做的,有什么收获(讲了下跳表的实现过程)
3. 你做的键值对数据库有没有自动持久化策略,如果要做的话怎么做?(答了Redis的AOF和RDB)
3. 你做的HTTP文件服务器,有实现断点续传吗?(没有)
4. 讲讲HTTP建立连接的过程
5. 讲讲IO多路复用和epoll
6. 你项目里用到了零拷贝,说一下什么是零拷贝,原理是什么
7. 讲讲MySQL的事务,如何实现的?
8. MySQL的索引是如何实现的?
9. K个一组翻转链表
10.编辑距离
代码题是只需要写接口函数,不用运行,讲一下代码思路就行。

祈祷二面

---------------------------------
9.06更新,已挂
全部评论
真会问编辑距离这种啊,我两次面试都是很简单的题,虽然我都没做出来
2 回复 分享
发布于 2023-09-04 18:49 江苏
我也飞书后端,面试官感觉人还行,可能是秋招准备得晚,都没怎么面试过😂,不好评,但是估计也得挂了。
1 回复 分享
发布于 2023-09-07 18:53 江苏
请问是java的面试吗
1 回复 分享
发布于 2023-09-04 18:55 新加坡
基于跳表的数据库是啥😂
点赞 回复 分享
发布于 2023-09-14 12:19 广东
感觉咱俩是一个面试官,问的题和手撕题都差不多,同g
点赞 回复 分享
发布于 2023-09-13 15:09 黑龙江
想请教一下佬哥,MySQL事务是怎么实现的,这个问题,是从原子性、一致性、隔离性、持久性这几个如何实现说的吗
点赞 回复 分享
发布于 2023-09-13 10:16 河南
哥,挂了会有感谢信吗?
点赞 回复 分享
发布于 2023-09-12 22:51 山东
老哥有后续了吗
点赞 回复 分享
发布于 2023-09-05 21:33 新加坡
佬,有笔试吗
点赞 回复 分享
发布于 2023-09-04 19:38 陕西
佬,哪个bu啊
点赞 回复 分享
发布于 2023-09-04 17:48 上海

相关推荐

04-02 18:58
四川大学 Java
📍面试公司:字节跳动🕐面试时间:2026.4.2💻面试岗位:后端实习生❓面试问题:1.controller/service/repository三层架构的功能2.各层怎么交互(答的依赖注入)3.鉴权怎么实现(说用的spring security套件,给予身份)4.缓存和数据库数据一致性怎么解决(回答的先改数据库在删除缓存)5.为什么不先删缓存(好像两种方式都有一定问题,但是后删缓存问题小一点)6.缓存删除失败了怎么办(应该想考消息队列,但是鼠鼠还真没想过)7.缓存有ttl吗,大量key同时过期怎么办(缓存雪崩呗,鼠鼠看过的但是只答了ttl加随机时间和双key策略)8.讲一下mysql索引(回答了主键索引和唯一索引,b+树实现)9.为什么用b+(回答的树高度低,查询次数少开销少)10.进程和线程的区别?线程什么哪些资源可以共享哪些不行(os原理,基本没怎么复习,答的一坨)11.死锁条件和解决方式(四个条件和死锁预防,死锁检测,死锁接触)12.cas和普通加锁的优劣(看的时候没认真看,只记得cas有aba问题)13.互斥锁,自旋锁区别(完全没看自旋锁)14.tcp,udp区别15.tcp为什么三次握手四次挥手16.手撕,数组的最大连续子数组和(leetcode原题,五分钟撕了,但是让讲就有点捋不清了,就说了当前缀和为负数了就抛弃前缀,重新开始子数组)17.脑筋急转弯:100只老虎和一只羊,老虎吃了羊就变羊,最后羊会不会被吃(好像是考虑奇偶情况,但是鼠鼠想的就是吃了羊等于自己成猎物了,大家应该都僵持下去下去)18.反问有什么不足:基础不扎实,比如os,数据库,网络,编程语言(都没问我Java,过程中问我c++熟悉不,我技术栈都没敢写肯定不敢说熟悉啊),算法(撕的快但是讲不清,感觉鼠鼠是死记硬背),不是这不是基本今天全问的都是不扎实吗🙌面试感想:很常规,不难,但是鼠鼠真的太菜了毕竟第一次,回答的还算流利了,以后再接再厉
Esten:补一下4.的缓存一致性解决: 在开发过程中,先修改数据库再删除缓存,也会有短暂脏数据时间段,即在数据库修改过程中,其他线程读取缓存仍然命中,会返回脏数据,但是由于修改操作时间极短,只有极少线程会读取到缓存中的脏数据,在互联网业务下属于可接受范畴;反之先删除缓存,再修改数据库,可能会出现其他线程由于命中缓存失败,前往数据库构建缓存,由于数据库的修改还未完成,读取到脏数据构建缓存,该缓存在后续ttl中一直存在返回脏数据,导致前端请求数据大量出错。 总结:两种方式都会有返回脏数据的可能,但是后删只会有短暂时间(线程修改数据库时间)业务错误,先删缓存可能有整个ttl时间业务错误
查看17道真题和解析
点赞 评论 收藏
分享
评论
14
74
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务