今年暑假就要找工作了,雖然才2月末,但是現在就要開始準備了,在此之前已經學習了很多的理論知識,進行了廣度優先遍歷,參考https://blog.csdn.net/qq_41901915/article/details/103672370(裏面有很多java開發需要掌握的知識點)。但是,有些內容不知道該學習多深,所以,從今天起,打算看別人的面經來進行深度優先遍歷,把別人面試遇到的問題學精,這樣纔好。
從今天起,每天一道算法題,每天一些面經題進行查缺補漏,希望自己能利用好這段疫情在家的時間,充實自己!寫博客的目的就是第一是爲了督促自己,第二是爲了自己能有一個移動的筆記本,閒暇的時候不是拿出手機看抖音什麼的,而是打開CSDN看看自己的博客。第三,也是爲了分享,共勉,共同努力,如有錯誤,請指出,另外,這些題可能對初學者不太友好,需繼續努力啊啊啊啊啊
先來幾道題題,小試牛刀。
1.http協議2.0和1.1的區別
2.什麼時候發生stackoverflow,一個線程的工作棧是多大,哪些區域會發生OOM
3.jvm的線程和操作系統的線程的關係
4.hashmap的實現,怎麼解決衝突,其他解決衝突的方法,使用過哪些線程安全的集合,優先隊列的實現,怎麼實現排序
5.treemap的實現,紅黑樹的有點,介紹一下其他的平衡樹,數據庫索引爲什麼採用B+樹。
6.hashmap和treemap的時間複雜度。
7.消息隊列的使用,多線程怎麼使用消息隊列,生產者消費者模型的實現。
8.java中的併發,synchronzie關鍵字的作用,修飾方法,變量和類的區別。
9.java集合類,list,arraylist的實現,初始空間不夠用如何擴容
10.jvm中的類的加載,什麼時候觸發fullGC。
11.hashmap爲什麼是線程不安全的。