【面經】美團一面二面面經(Java開發)
時間:2019/9/17 13.00-16.00
地點:成都
一面
- 自我介紹
- 數據結構瞭解哪些
- 二叉樹和紅黑樹區別
- 二叉樹和二叉平衡樹查詢時間複雜度
- 紅黑樹和B樹和B+樹區別
- B+樹應用在哪裏
- 兩種索引的區別
- 數據庫的事務隔離級別
- 什麼是幻讀
- 數組和鏈表區別
- 隊列和棧實現,優先隊列怎麼實現
- Map結構有哪些集合
- HashMap的put方法,什麼時候轉紅黑樹,爲什麼是8
- LinkedHashMap和TreeMap以及HashMap的區別,TreeMap通過什麼排序
- 會什麼算法、說一下動態規劃,走迷宮
- 樹的前中後續遍歷,僞代碼
- 計算機網絡的七層協議
- 網絡層協議
- 運輸層協議,UDP和TCP區別
- UDP和TCP頭部
- TCP擁塞控制四個算法
- TCP的滑動窗口和流量控制
- 哪些協議使用了TCP,哪些使用了UDP
- UDP的校驗和計算,爲什麼需要IP
- HTTP協議的頭部,響應碼很多
- HTTP請求過程
- Spring MVC過程,做了什麼事,怎麼響應頁面,怎麼響應數據,內部實現原理
- Spring IOC原理,做了什麼事
- Spring AOP做了什麼事
- 多線程中的Synchronized和ReentrantLock區別
- Synchronized代碼不響應中斷的理解和使用
- Synchronized底層源碼和reentrantlock底層源碼
- 什麼是CAS,和數據庫的樂觀鎖的區別
- 代理服務器瞭解嗎,ngix正向代理和反向代理
- 增刪改查SQL語句
- 通過什麼方式學習
- 自己有沒有博客和GitHub
- 最近看了什麼書
- 關注了哪些博客
- 寫一個題,排序鏈表的合併
二面
- 自我介紹
- 使用 Spring事務管理的方式
- Spring bean的作用域
- 單例模式和原型模式的bean是由誰來管理,由誰進行銷燬
- 有沒有使用過模板模式,觀察者模式
- Spring加載bean,幾種作用域的加載有什麼不同
- 項目中的權限管理設計,能不能使用軟編碼方式
- 畫出和用戶管理相關的表的類圖
- 庫存表的字段信息,進行出庫和入庫時衝突怎麼弄,考慮併發問題
- 如果現在解決併發問題怎麼解決
- HashMap的put操作
- HashMap的size操作準確嗎,ConcurrentHashMap的size是否準確
- SQL語句
- maven命令,命令依賴衝突怎麼解決
- GitHub怎麼創建分支
- Linux怎麼查看日誌文件
- 數據庫的樂觀鎖和Java的CAS有什麼區別
- 平時自己怎麼學習,看了哪些技術書,看了哪些非技術書
- 有沒有博客,有沒有GitHub,博客寫些什麼,最近看的技術博客或者公衆號最近印象最深刻的文章,自己的技術文檔寫什麼
- 時針和分針一天重合幾次