字節(jié)住小幫暑期實(shí)習(xí)
1、項(xiàng)目的收獲,難點(diǎn),除了這些技術(shù)的難點(diǎn),遇到困難怎么解決的
2、arraylist和linkedlist區(qū)別,增刪操作的具體實(shí)現(xiàn),什么情況下添加時(shí)從頭節(jié)點(diǎn)開(kāi)始遍歷,linkedlist為什么要做成雙向鏈表,除了為了實(shí)現(xiàn)deque和queue接口還有什么原因,痛苦面具x1
3、arraylist和linkedlist按照元素的值查找的速度相同嗎,那可以用什么方法加快linkedlist查找,痛苦面具x2,答了arraylist元素有序的情況下可以二分,linkedlist可以用跳表結(jié)構(gòu)來(lái)加快查找
4、hashmap擴(kuò)容原理,為什么1.7之前一直要使用頭插法,痛苦面具x3,瞎答的尾插法還要多維護(hù)一個(gè)tail指針,頭插直接在數(shù)組位置插入快,提示想想rehash,然而還是不會(huì)
5、1.8的紅黑樹(shù),為什么要用紅黑樹(shù),大概說(shuō)了一下紅黑樹(shù)和AVL樹(shù)
6、ConcurrentHashMap
7、jvm垃圾回收機(jī)制,有實(shí)踐看過(guò)jvm的垃圾回收過(guò)程嗎,有沒(méi)有自己制造過(guò)oom異常,除了不停new對(duì)象還有什么方法快速制造oom,提示修改jvm參數(shù),怎么制造棧內(nèi)存溢出
8、mvcc和鎖
9、講講IOC和AOP,spring具體怎么實(shí)現(xiàn)的
10、redis的數(shù)據(jù)結(jié)構(gòu),redis的集群
11、怎么為一個(gè)服務(wù)限流,答了mq和sentinel,怎么自己去設(shè)計(jì)一個(gè)限流,答了可以用redis維護(hù)一個(gè)記錄,實(shí)現(xiàn)類似semaphore鎖
12、連續(xù)子數(shù)組最大和
13、最長(zhǎng)遞增子序列
14、反問(wèn)
感覺(jué)寫(xiě)算法不知道怎么和面試官交流,但兩個(gè)貪心思路自己說(shuō)不清,支支吾吾半天更尷尬了。。。
面完很快收到二面通知了,感謝面試官放海
許愿二面