01.07 小米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?&和&&的區別?....

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

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

02,數據庫知識點

03,微服務

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

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