深圳字节跳动后台服务器开发实习生面经
深圳字节跳动后台服务器开发实习生面经
offer审批失败,有点学不进去,写个面经平复一下,时间有点久有些问题不记得了
一面
- 手写快排
- 手写堆排
- 已知出栈序列求所有的入栈序列
- 项目相关
- tcp三次握手四次挥手
- 计算机冷启动,内存和寄存器怎么加载的,操作系统看到什么书
二面
二面的面试管很好,学到了不少东西
- 看你写的快排是随机选取数字进行partition的,那你知道怎么保证可以做到一定不会退化的快排吗?(不知道,每次选择三个数,用大小在中间的那个数进行partition)
- 排序算法的稳定性
- 为什么比较排序只能做到nlg(n)的复杂度(不知道)
- bio/nio/aio
- tcp和udp的区别
- mysql的聚簇索引
- redis有了解吗?zset 的底层实现
- 跳表的增删查时间复杂度,还有这样的数据结构吗
- avl树,红黑树,b+树特征,你觉得为什么redis使用跳表而c++里面的map用的是红黑树(我说是因为跳表好实现而且是后出来的,其实是应为跳表的高度是随机的不稳定)
- redis rdb aof 如果在fork开始后进行数据写入时断电那么rdb中会不会有新写入的数据,看你不了解你知道fork吗?对linux的了解多深,看过csapp之类的书吗?看你时学java的c的水平怎么样?(大一上课的水平)
- 写代码,假如给定一篇英文课文,a-zA-Z文章的长度为n然后需要保留k个字符剩下的字符间相对顺序不变,问怎么能使得字典序最大
- 写代码,字符串中的最长重复子串
- n*m的表格,从左上走到右下,每次只能往右或者往下一格,有几种不同的走法,没时间了写一下dp的方程
- 有什么问我的(不来实习也有机会到终面吗??)
补充:15. mysql explain 16. tire树 17.
三面
leader聊天
- 成绩,哪里人
- 不是计算机专业的为什么要学计算机
- 什么时候来
- 有什么要问我的?(已知出栈序列求所有的入栈序列怎么写?自己想)
四面
hr面
- 你认为你的优缺点
- 同学关系
- 最骄傲的一件事
- 后面忘了