快手Java后台二面面经
一面:
1.有用过哪些集合类?
2.ArrayList和LinkedList的区别?插入、删除、访问的时间复杂度?
3.如果给这两个List添加10000个数据,这两个list会有什么变化?
4.ArrayList是怎么扩容的?初始化时给定ArrayList的size,数组大小一定就是给定值么?
5.HashMap初始大小,为什么要这么设计?
6.HashMap时间复杂度,最坏的情况时间复杂度,使用红黑树之后的时间复杂度?
7.项目中使用这些集合类线程不安全怎么办?项目中怎么使用Synchronized关键字的?
8.使用Synchronized锁类对象和锁方法有什么区别?
9.Service是否是单例?
编程题:
将I LOVE YOU .逆序输出:YOU LOVE I.
输入中每个单词和.之间可能有多个空格,但是输出单词之间只能有一个空格。
详细讲了一下代码中的几行,数组的大小length写成了length(),trim()也用错了
二面
1.给了一个域名:kuaishou.com,问输入浏览器之后的过程
2.给定域名有哪些方法可以获取到对应的IP,你自己获取,不是DNS。
3.TCP四次挥手为什么是四次挥手?
4.Session和Cookie的区别已经使用场景?
5.Http状态码,403,302,500,如果现在让你写一个程序能出现500的错误,你怎么写?
6.数据库的四种隔离级别?可重复读具体描述?
编程题:
找出数组中第K大的元素,我用的快排,问了时间复杂度,问堆排能不能写?我说不会。
问能不能实习。
感觉有点想招实习生??
#快手##Java工程师##面经##校招#