字节跳动-后端开发-面经
一面:
1.红黑树和AVL树的特点以及区别。
2.B树和B+树的特点以及区别。
3.解释timewait状态。
4.TCP如何避免拥塞,怎么判断拥塞了。
5.解释LRU算法,怎么实现。
6.当数据量较大时,快速排序和堆排序性能比较。
7.进程间通信介绍。
8.操作系统中的各种锁的实现原理,互斥锁、悲观锁、乐观锁。
9.介绍时间复杂度是O(n)的算法。
11.写一个宏,实现加法。
12.宏的优缺点,副作用是什么。
13.读程序(继承与多态,涉及重写、重定义)。
14.多态实现原理。
15.规律题:1~100,每轮依次划掉奇数位置上的数,最后会剩下哪个数?
16.概率题:A,B两个人赌博,胜率各自为0.5,现在设定获胜规则:A只要获胜
2局以上就获胜,B要3局以上才会获胜,问A,B双方获胜概率多少
17.代码题:区间最大最小值。两个长度为n的序列a,b,问有多少区间[l,r]
满足max(a[l,r])<min(b[l,r])即a[l,r]的最大值小于b[l,r]的最小值
18.代码题:最大不重复子串。给定一个字符串,找出其中无重复字符的最长
子字符串的长度。
19.代码题:字符串s=“0123456789101112...”返回s[i],让采用逐步缩小范围的方法,
分为三类:一位数、二位数、三位数,给定一个m直接可以判断它落在
哪个区间,然后从区间起始开始填数字串。
二面:
1.项目细节。
2.手写项目中某个模块代码。
3.介绍各种网络协议。
4.DNS在网络层用哪个协议,为什么。
5.介绍HTTPS协议,详述SSL建立连接过程。
6.常见的非对称加密,对称加密算法,3DES为什么叫3DES。
7.介绍智能指针。
8.代码题:反转单链表。
9.代码题:复杂链表复制。
10.代码题:数组a,先单调地址再单调递减,输出数组中不同元素个数。要求:O(1)空间复杂度,不能改变原数组
三面:
1.详述函数重载
2.64匹马,8个赛道,找最快的4匹马。
3.64匹马,8个赛道,找最快的8匹马。
4.一条TCP连接上发送数据速度的影响因素有哪些。
5.map对象拷贝构造实现过程。
6.epoll中常见事件,中断属于哪一种。
7.多线程与多进程区别,使用场景,浏览器使用哪个,为什么。
8.基于TCP的整个网络连接过程。
9.代码题:二叉搜索树找第k小数据,两种方法实现。
10.代码题:长度为n的数组,元素大小是0~n-1,判断数组元素是否有重复的,
要求:O(1)时间空间复杂度。
11.代码题:求一个数组连续子数组的最大区间和。#字节跳动##校招##面经##Java工程师#
1.红黑树和AVL树的特点以及区别。
2.B树和B+树的特点以及区别。
3.解释timewait状态。
4.TCP如何避免拥塞,怎么判断拥塞了。
5.解释LRU算法,怎么实现。
6.当数据量较大时,快速排序和堆排序性能比较。
7.进程间通信介绍。
8.操作系统中的各种锁的实现原理,互斥锁、悲观锁、乐观锁。
9.介绍时间复杂度是O(n)的算法。
11.写一个宏,实现加法。
12.宏的优缺点,副作用是什么。
13.读程序(继承与多态,涉及重写、重定义)。
14.多态实现原理。
15.规律题:1~100,每轮依次划掉奇数位置上的数,最后会剩下哪个数?
16.概率题:A,B两个人赌博,胜率各自为0.5,现在设定获胜规则:A只要获胜
2局以上就获胜,B要3局以上才会获胜,问A,B双方获胜概率多少
17.代码题:区间最大最小值。两个长度为n的序列a,b,问有多少区间[l,r]
满足max(a[l,r])<min(b[l,r])即a[l,r]的最大值小于b[l,r]的最小值
18.代码题:最大不重复子串。给定一个字符串,找出其中无重复字符的最长
子字符串的长度。
19.代码题:字符串s=“0123456789101112...”返回s[i],让采用逐步缩小范围的方法,
分为三类:一位数、二位数、三位数,给定一个m直接可以判断它落在
哪个区间,然后从区间起始开始填数字串。
二面:
1.项目细节。
2.手写项目中某个模块代码。
3.介绍各种网络协议。
4.DNS在网络层用哪个协议,为什么。
5.介绍HTTPS协议,详述SSL建立连接过程。
6.常见的非对称加密,对称加密算法,3DES为什么叫3DES。
7.介绍智能指针。
8.代码题:反转单链表。
9.代码题:复杂链表复制。
10.代码题:数组a,先单调地址再单调递减,输出数组中不同元素个数。要求:O(1)空间复杂度,不能改变原数组
三面:
1.详述函数重载
2.64匹马,8个赛道,找最快的4匹马。
3.64匹马,8个赛道,找最快的8匹马。
4.一条TCP连接上发送数据速度的影响因素有哪些。
5.map对象拷贝构造实现过程。
6.epoll中常见事件,中断属于哪一种。
7.多线程与多进程区别,使用场景,浏览器使用哪个,为什么。
8.基于TCP的整个网络连接过程。
9.代码题:二叉搜索树找第k小数据,两种方法实现。
10.代码题:长度为n的数组,元素大小是0~n-1,判断数组元素是否有重复的,
要求:O(1)时间空间复杂度。
11.代码题:求一个数组连续子数组的最大区间和。#字节跳动##校招##面经##Java工程师#