字节跳动(4.16)凉面面经分享攒人品
字节跳动面经
一面(小哥哥人好,问的不难,比较和蔼)
1. 自我介绍一下
2. 说一下tcp/ip协议?Java中server端怎么实现?
3. 四次挥手说一下?为什么client端有time_wait 2msl?如果服务器断开连接,会怎么样?
4. 说一下常见的状态码?
5. 数据库了解吗?说一下你了解的数据库,并解释他们之间的区别
6. 数据库的索引说一下?怎么实现的?
7. 数据库的锁说一下、数据库中的事务说一下,acid解释一下?数据库的隔离机制说一下?数据库的级别分别有什么作用?解释幻读、不可重复度、脏读。
8. Redis介绍一下、Redis使用过的基本类有什么?Sorted set底层怎么实现的
9. 出一个算法题目:给链表排个序吧(上帝啊,so easy紧张居然没搞出来,面试官一直在安慰。。。坐等很遗憾短信)
二面(隔了五分钟不到,面试官面瘫,喜怒哀乐看不出心里没底,越问越刁钻)
1. (以为已经凉了,有点懵)自我介绍一下
2. 你这个项目。。。。。。。。。。。。。。。。。。。。。。。。。。
3. 数据库索引了解吗?数据库最左原则解释下?好的,那么我们看个例子。。。。。(感觉答错一个,被面试官吓退一道题目,具体忘了)
4. 听说你redis用的不错,redis为什么要使用?redis是单进程还是多进程?单线程还是多线程?如何实现高并发?什么时候用redis?不要说jedis中封装好的方法redis如何将数据存储?主从解释一下?
5. 做一个算法题目:最长不重复子串长度(力扣原题,表示用了hash依然没有获得面试官的青睐,想了五分钟,实在想不到合适优化方案)
6. 好的,这道题暂时停止,问一下:数据库索引为什么要用到你说的b tree?他和b tree有什么区别?查找的复杂度是多少(这儿回答错误。。。被疯狂diss)?
7. Java中的锁有什么类型?
8. 除了sychornized还有什么锁?Reentranlock和sychorinzed的区别说下?手写下reentranlock的实现(跪了)、你所说的reentranlock的公平锁实现一下(跪了,说了一下思路,面试官不满意了)
9. 好的,我们到此为止,在考虑完其他***之后给你hr面试或者其他答复(嗯,很委婉的拒绝)
#字节跳动##面经##内推##春招##Java工程师#