快手Java 一二面
提前批的末尾,被捞了
一面:
-
自我介绍
-
聊项目,解决了哪些问题,用了哪些技术
-
算法题:LRU或者LFU任选一题,不能用LinkedHashMap,我选了LRU
-
算法题:有向无环图找最短路径
-
提问
总体来说一面很顺,手撕的题前几天才写过
二面:
-
聊项目
-
数据库是如何做范围读取的?mysql中记录是如何存储的
-
索引使用B+树的好处
-
如何保证数据库断电不丢失?redo日志,先写日志,掉电了,如何确定数据有没有写到盘上。redo日志重做的细节
-
对kafka有没有实际的应用经验
-
写SQL:部门表与薪水表,找每个部门薪水最高的员工名称,薪水,部门名称(每个部门薪水最高的员工可能有多个,leetcode原题)
-
算法题:数组中和为target中的所有二元组,无序数组,A={1,2,3,5,5,7,7,8},target=8,输出(1,7),(3,5),不能有重复的,(3,5)与(5,3)视作相同
-
ArrayList源码相关,怎么扩容的,扩容是不是一定1.5倍?
-
公平锁与非公平锁是怎么实现的,使用非公平锁,当前获取不到锁,加入等待队列,之后会怎么处理?
-
没有提问环节,有些凉