01.07 小米java社招面試記錄:MySQL+架構設計+GC+二叉樹,帶備戰思路


小米java社招面試記錄:MySQL+架構設計+GC+二叉樹,帶備戰思路


小米一面

  • 二分查找(遞歸和非遞歸)
  • 反轉鏈表(遞歸和非遞歸)
  • 常用Java集合類
  • HashMap為什麼長度是2的n次冪,數據結構,擴容(包括元素移動的細節),線程不安全的問題
  • ConcurrentHashMap怎麼保證線程安全, 1.7和1.8有什麼變化,為什麼要要這麼優化
  • CopyOnWriteList怎麼保證線程安全, 為什麼這麼做
  • Java synchronized關鍵字的作用,原理,鎖升級、鎖粗化、鎖消除
  • volatile關鍵字的作用,原理
  • MVCC
  • 事務的ACID ,每一項是如何保證的
  • MySQL的索引結構,為什麼是B+樹而不是B樹

小米二面

  • 先升序後降序的數組排序
  • 求遞增數組中相加等於10的元素對
  • 17^400 - 19100計算結果能不能被10整除
  • 一個urI對應一個random值 ,要求設計-個系統 ,根據url查詢random值,具體到表怎麼設計,索引怎麼
  • 加,代碼怎麼寫
  • 講項目,畫架構圖,為什麼這麼設計,哪一塊是你做的,為什麼這麼做,做了多久
  • 後面的記不住了...

小米三面

  • 自我介紹
  • 鏡像二叉樹(遞歸和非遞歸)
  • 刪除二叉搜索樹的某一個節點
  • 給定數組,求第k大的數字
  • 單例模式的幾種寫法,解釋為什麼
  • tcp握手揮手過程,以及socket的狀態變化
  • 線程的狀態,以及變化的時機
  • Java內存模型,堆的組成, gc過程
  • synchronized修飾同一個類的兩個靜態***同步嗎,為什麼
  • 線程池設置了coreSize和maxSize之後,如果線程數量已經達到了coreSize ,這個時候進來一個任務,會怎麼處理
  • SQL查詢優化怎麼做
  • 你的優點是什麼,缺點是什麼
  • 最快什麼時間入職,薪資要求
  • 你有什麼要問我的嗎

備戰思路

01,java基礎知識需要掌握好

  • 解釋內存中的棧(stack)、堆(heap)和靜態區(static area)的用法。
  • switch 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上?
  • 用最有效率的方法計算2乘以8?
  • &和&&的區別?
  • ....

這些都是容易被問到的知識點~ 還好我這邊有準備整套的複習資料,如果你需要我準備的這些複習資料的話,麻煩幫我:

轉發文章+關注作者後私信回覆【複習】來免費獲取到

小米java社招面試記錄:MySQL+架構設計+GC+二叉樹,帶備戰思路

02,數據庫知識點

小米java社招面試記錄:MySQL+架構設計+GC+二叉樹,帶備戰思路

03,微服務

小米java社招面試記錄:MySQL+架構設計+GC+二叉樹,帶備戰思路

在複習的時候有特意總結過一份文檔:裡面包括( JVM , JAVA集合,網絡, JAVA多線程併發, JAVA基礎, Spring原理,微服務, Zookeeper , Kafka , RabbitMQ , Hbase , MongoDB , Cassandra ,設計模式,負載均衡,數據庫,一致性哈希,JAVA算法,數據結構,加密算法,分佈式緩存)等等,免費獲取方式:

轉發文章+關注作者後私信回覆【複習】即可免費獲取到!


分享到:


相關文章: