Java研發面經分享第一波: 滴滴 & 美團

Java研發面經分享第一波: 滴滴 & 美團

滴滴

滴滴面試安排比較混亂,若是你經過了一面,那麼就優先安排後面的面試,因此致使還沒一面的人就得一直苦等。那會兒我是下午一點去的,大概到了快4點才進行一面,後面就嗖嗖嗖地過關斬將到了hr面,也算是運氣不錯吧。java

交叉1面mysql

垃圾回收算法git

(代碼)01矩陣,相鄰的1是一個島嶼,找出全部島嶼數(遞歸解決)程序員

有關注過開源社區嗎,都看過哪些源碼github

AtomicInteger實現原理(CAS自旋)web

synchronized和reentrantLock區別面試

介紹spring的IOC和AOP,分別如何實現(classloader、動態代理)redis

redis如何處理分佈式服務器併發形成的不一致,若是數據庫不提供隔離呢算法

OSGi的機制(由於簡歷寫了)spring

交叉2面

2個雞蛋,100高的樓,最少的次數測出雞蛋碎掉的臨界層,沒碎的雞蛋能夠反覆用(沒作出,應該是14次,網上有解法)

大量字符串找出數量最多的K個,考慮內存放得下和放不下兩種狀況

解釋mysql索引、b樹,爲啥不用平衡二叉樹、紅黑樹(磁盤和內存的存儲方式不一樣)

垃圾回收算法,爲何要分代處理

跳錶

IO

epoll

一致性hash

zookeeper如何同步配置

講下java鎖的原理

ConcurrentHashMap原理

Boss面

(代碼)最長迴文子串

GC停頓緣由,如何下降停頓

JVM如何調優、參數怎麼調

如何用工具分析jvm狀態

進程和線程區別

epoll和select區別

解釋mysql索引、b樹

HR面

五個詞來描述本身

長期的計劃

興趣愛好

指望薪水

對崗位的要求

已經拿到的offer

Java研發面經分享第一波: 滴滴 & 美團

美團

美團的面試安排在下午,不用早起真好~ 等候區就在1樓,工做人員供了麪包和一次性杯子,旁邊就是運動區,有跑步機、乒乓球桌、桌上足球及一些運動器材,感受環境仍是很不錯的(此處應該吐槽下京東,場面極其混亂)。

面試一共三輪,會有工做人員叫名字讓你進去面試,就是中間的等待有點久。每輪經過的話就會留下來接着下一面,沒過的話工做人員會告訴你「很抱歉,你今天的面試已經結束了」,特別是在漫長的等待中,周圍的人一個個被「很抱歉」,那個心理壓力可不是通常大。而後就是所有的面試通過,大概整理了下,發現運氣還不錯,均可以答得上來。面試問題只是參照,面試官會根據你的簡從來問針對性的問題,而你也能夠引導他來問你擅長的領域,固然有些基礎的東西仍是必須瞭解的,好比jvm、spring框架、持久化框架、數據庫之類的。

一面

介紹實習經歷,講項目

解釋https (先公私鑰加密,再對稱加密) 爲何不直接公私鑰

jvm中類加載過程,解釋雙親委派加載,及類是在哪一個加載器加載的

傳值、傳引用 傳入對象引用,指向一個new的對象,問主函數裏的會變嗎

找出數組中最多的那個數,除了hashset還有沒其餘方法(只想到蒙特卡羅法)

(代碼)輸入合法的數字字符串,輸出貨幣字符,就是每隔3位加個逗號,考慮邊界處理

(代碼)有1-10 10個數,和一個數sum,計算用10個數連加獲得sum有多少種系數組合(遞歸)

二面

自我介紹,講項目

spring中bean加載機制,bean生成的具體步驟

ioc注入的方式

spring什麼時候建立applicationContext(web.xml中使用listener)

listener是監聽哪一個事件(ServletContext建立事件)

springMVC流程具體敘述下

synchronized和reentrantLock的區別,synchronized用在代碼快、方法、靜態方法時鎖的都是什麼

介紹ConcurrentHashMap原理,用的是哪一種鎖,segment有沒可能增大(不會,只會增大每一個segment中的entry數組)

如何實現高效的同步鏈表

(代碼)層次遍歷二叉樹,偶數層輸出逆序輸出(隊列,用一個標記記錄每一層的結束,統一輸出當前層)

三面

介紹實習經歷,講項目

(代碼)給定一個字符串,寫出全部可能的全排列(遞歸)

剩下的就是問一下hr面的問題:

怎麼理解踏實,你在項目中哪兒體現到了

最近最有成就感的事

你的優勢 缺點

最近在看的技術

是否寫過其餘我的興趣的小項目

寫技術博客嗎,github呢

我的職位目標 三面的面試官仍是很nice的,最後的部門好像也是由三面的來挑。面試結束次日就讓簽了兩方,待遇也沒得談。

幾點建議

你們在看面經的時候,能夠對照本身的算法和基礎知識還有哪些空白,相應地去填補這些空白。

算法題基本上是每一個崗位必備的,你們必定要重視起來。這兩篇面經中的算法題仍是比較經典的,建議你們面試以前都過一遍~

建議你們去面相關公司以前先看看該公司的面經,對算法題的難度、基礎知識的深度有必定的瞭解和把握。

針對上面的技術我特地整理了一下,若是想學習Java工程化、高性能及分佈式、深刻淺出。性能調優、Spring,MyBatis,Netty源碼分析的朋友能夠查看一下

資料獲取方式:關注公衆號:「程序員白楠楠」獲取上述資料

相關文章
相關標籤/搜索