字节日常实习一二三面经已过等HR面
楼主双非大二,第一次投递广州字节被狂退,说不要大二,投了腾讯没下文,投了cvte没下文,麻了,不过深圳给了个机会,在此非常感谢帮我内推的师兄,还有帮助我的另一位师兄,还有鼓励我的大伙们
字节一面(60min)
上来我就迟到了,尬住,好险面试官和蔼,看面相是个老技术员
1.自我介绍
2.第一次面试,上来给我来了个spring依赖注入,好家伙确实不会(赶忙扯IOC,AOP)
3.HTTP和HTTPS的区别
4.TCP和UDP的区别(我事后发觉面试官可能觉得我说的啰嗦,但是没打断我)
5.说说虚拟内存(好家伙也不懂,扯了物理内存和虚拟内存的映射,分段,分页)
6.xxx树了解吗(xxx听读音好像是sam或者sum,不了解)
7.B树和B+树的区别(我说了作为索引的数据结构的区别,面试官透露说他觉得最重要的一点是要说出B+树的数据都保存在叶子结点)
8.跳表了解吗(不是很懂怎么说,举了个例子,跳表存1~9这几个数是怎么存的)
9.为什么这样设计跳表?
10.innodb和myisam的索引有什么区别(说了innodb有聚簇,myisam无,但我猜他本意不是这个)
11.那聚簇索引和非聚簇的区别(无心插柳柳成荫,他没深入刚才的问题,转过来问这个)
12.redis的持久化方式了解么?
(补充:还问了线程进程区别,了解协程吗?)
做题:
第一题:LC209 - 长度最小的子数组
https://leetcode-cn.com/problems/minimum-size-subarray-sum
第二题:LC7 - 整数反转
https://leetcode-cn.com/problems/reverse-integer/
聊天:
表现如何?答:整体还行,要看多点计网操作系统,看源码。
反问部门业务,面试官科普了挺久。
结束
字节跳动二面(60min)
压力面,压力给的太大了,面试官是个礼貌和蔼,耐心,愿意听完我废话的人,但是不妨碍他给压力的事实
1.线程池原理,细节(全面,深入问...)
2.如何创建线程池,你用的什么方法
3.你做项目的时候用了线程池是吧,你是如何考虑线程池的各种参数的
4.如果要你实现一个高性能的http服务器,你会考虑什么(我说应该参考netty)
5.具体考虑什么?(不知所云一堆)
6.你刚才提到了编解码,那说说有哪些编解码协议
7.netty的线程模型
8.http常见头部
9.https安全性方面问题
10.http server如何将二进制数据解析成对象(一开始没懂什么意思...实际上我不知道答案)
11.了解过设计模式吗,哪些?
12.你用过什么,具体说说应用场景
13.Spring用了哪些设计模式?具体说说
14.你学java的是吧,那你说说接口原理,作用(一塌糊涂,但面试官愿意听)
15.如果要你实现一个线程池,你应该怎么考虑(怎么全是这些...)
算法:二叉搜索树中第K大的节点的值,不许遍历所有节点,要优化
本来面试官想直接结束,我请求提问,今天表现如何,回答是大二知道这些,个人觉得不错了,让我再巩固基础
字节跳动三面(60min)
面试官提前告诉我要迟半小时,而且温柔,就是给的压力有点大~
1.上来问redisson,我寻思不应该问redis吗呜呜(说了蛮久)
2.能介绍一下bytebuddy吗(项目用到了)
3.一堆项目里的细节,比如redisson是分布式的么?是需要创建一个进程才能使用,还是引maven就可用的?
4.问以后规划(有没有想过走哪条路之类)
5.智力题:一个圆内,任取三个点,这三个点在一个半圆内的概率是多少?
6.描述堆之后,手写建堆代码
无算法,之后面试官耐心解答我的反问好久,十分感谢
三面下来大概半个月,hr面应该不会出问题...吧?
#面经##实习#