作者:julia_ 链接:https://www.nowcoder.com/discuss/752971?source_id=discuss_experience_nctrack&channel=-1 来源:牛客网


1. 自我介绍

2. 项目问题

3. 实习有什么体感

4. 假设有1,2,3,4,5,6,7,8,9,10 在B+树中存储,是什么样子

5. 为什么1和2之间是链表

6. MySQL有哪些索引

7. 为什么会有覆盖索引

8. table 有a b c d四列,(b c d) 联合索引,selct c,d from table where c = 1会使用这个联合索引吗?不会,最左匹配

9. 为什么覆盖索引存在最左匹配原则

10. select c,d from table where b = 1 and d = 2会走索引吗?我:行。面试官:这个可以行,也可以不行…分情况,MySQL中有一些优化,比如ICP,就会将索引下推(我没懂…)

11. 算法题:LeetCode 34. 在排序数组中查找元素的第一个和最后一个位置

12. HashMap底层数据结构是什么

13. HashMap先不考虑红黑树,手写一个底层数据结构,存储key value

14. Java 线程的状态;time-waiting时间到了,进入什么;调用sleep()进入什么状态?time_waiting,那这个time_waiting状态会释放锁吗?不会;锁等待是什么状态?blocked

15. wait() notify() 以及线程状态转换

16. Java线程状态和操作系统线程有什么不同?Java线程的 runable=ready+running,操作系统线程分为 running和 ready,并不是合在一起的

17. 为什么Java把这两个状态放在一起?

18. 反问




1.职位分析

    快手,刚开始下载过,用过一段时间,后来卸载了就再也没有下过,手机里也没有抖音,害怕看短视频破坏专注力,所以直接就不安装了,程序员工作还是很需要专注力的。

    前几天成龙大哥入驻快手了,这感觉,好像现在不是进快手就是进抖音,短视频行业现在就是二分天下的局面了吧,其它短视频平台的体量和知名度都没这俩大,不过短视频的未来是啥呢?搞不明白。

    加班强度应该不小,用户体量这么大,bug肯定很容易出现了,还有各种节日的版本更新,再加上大厂通常节奏,加班是正常现象,虽然现在都双休了,拒绝加班了,但实际情况只有城里人知道了。

    当然,福利待遇也不会差,还能有股权激励的机会,财务自由的可能还是很让人向往的,谁想一辈子打工呢?


2.面试分析

1)面试时间:时间中等

2)面试内容:中等

3)试题难度:中级+

4)试题拓展:多

5)核心考点:树+链表+MySQL索引+map集合+多线程+力扣算法

6)总结:二面以数据结构考核为主,一半的问题都是相关的。问题递进关联,难度也是层层递进,还问了具体语句的索引性能。在短视频行业算法是很核心的东西,而数据结构是算法的基石,即使是刚入职,未必代表以后不会转成算法岗,如果能在面试中考察出这方面的天赋也是不错。是一次技术性强的面试,可以筛选出能够直接上手工作的人,估计三面就是能力评估了。


3.问题解析——线程的状态


大家有什么关于面试想了解的内容,可以在文末留言~