1. 程式人生 > 其它 >JAVA 堆和棧

JAVA 堆和棧

前言

為了方便同學們更好的面試複習,小編把各類面試題給彙總了一下,每道題都是經過小編篩選後覺得需要掌握的,此次整理包括Java、作業系統、計算機網路、資料庫、演算法等。並且還為大家整理好了答案哦!。

面試必問題(答案在結尾):

JAVA相關

  1. ArrayList和LinkedList的區別,各適合什麼場景?
  2. HashMap解決雜湊衝突除了鏈地址法,還有什麼方法?
  3. 怎麼安全刪除List中的元素?for迴圈中刪除一定會報錯嗎?
  4. euqals和hashCode
  5. HashMap 與 ConcurrentHashMap 有什麼區別
  6. HashMap 插入元素的過程
  7. interface 是什麼?用 interface 有什麼好處
  8. Java 有記憶體洩露嗎
  9. ArrayList 與 LinkedList 有什麼區別
  10. volatile 關鍵字有什麼作用
  11. synchronized 和 reentrantlock 的區別
  12. 有了解過 CAS 嗎
  13. 多個執行緒同時向資料庫中進行寫入操作,怎麼處理,如果是分散式的多個執行緒呢?
  14. Spring 中用到了幾種設計模式
  15. 使用工廠模式有什麼好處

作業系統

  1. 程序間通訊
  2. 程序、執行緒區別
  3. 程序排程演算法
  4. 協程是什麼
  5. IO多路複用
  6. 一個exe檔案包含什麼內容
  7. 虛擬記憶體
  8. 零拷貝
  9. 棧和堆的區別

計算機網路

  1. 三次握手、四次揮手
  2. TCP如何保證通訊的可靠性
  3. 等多久對觸發超時重傳
  4. 具體講講擁塞控制
  5. time wait的2MSL有什麼用
  6. time wait狀態過多有什麼問題
  7. 用過Linux嗎,網路是怎麼配置的,講講DHCP
  8. 輸入URL後發生了什麼
  9. HTTP和HTTP的區別
  10. Session和Cookie的區別
  11. Get和Post的區別
  12. ping用的什麼協議,具體講講ICMP
  13. TCP和UDP的區別
  14. 粘包問題怎麼解決

資料庫

  1. 用過什麼索引
  2. 講講最左字首原則
  3. 聚簇索引和非聚簇索引的區別
  4. 索引採用的資料結構
  5. InnoDB和Myisam的區別
  6. 事務的特性,有哪些隔離級別

演算法

  1. 關鍵詞分割字串
  2. Top K問題
  3. 判斷是否是映象二叉樹
  4. 使連結串列偶數位結點在前,奇數位結點在後(如1 -> 2 -> 3 -> 4 -> 5變成2 -> 4 -> 1 -> 3 -> 5
  5. 跳臺階
  6. 最小編輯距離
  7. 判斷4個數字是否滿足24點
  8. 只由1、0、-1組成的陣列,使全部的1在陣列最前、全部的-1在陣列最後(在原陣列上修改)
  9. 反轉連結串列
  10. 為什麼二分查詢時間複雜度是 log2nlog_2nlog2​n,怎麼算的
  11. 合併能合併的陣列,如[[1, 2], [4, 6], [5, 8]]合併為[[1, 2], [4, 8]]
  12. 判斷int32的數字是否是迴文數(1. 考慮負數; 2. 考慮溢位問題)
  13. 1~n中k出現了幾次(n為正整數,k為[0, 9])(兩種題型,如題型1:55中5只算出現了一次;題型2:55中5出現了2次)

總結

小編其實覺得面試時實力與運氣五五開。

一次面試代表不了什麼,但是你在這次面試中查漏補缺了多少以及心理素質提升了多少會影響你的下一次面試。借用博爾赫斯的一句話:“生活是苦難的,我又划著我的斷漿出發了​。​​​​”

小編也把大佬的面試題和答案整理好啦:關注下方公眾號自行獲取,還有更多大廠面試專題資料和視訊哦!

寫文不易,覺得有幫助還請關注支援一下小編,也歡迎各位大佬提出問題,感謝!!!