1. 程式人生 > >拿百度offer的三面經歷

拿百度offer的三面經歷

百度java程式設計師一面:

1 手寫ArrayList

2 手寫進位制轉換演算法,求出一個數的二進位制數1的個數

3 JAVA基礎 equals和==

4 多執行緒方式、threadlocal,各種鎖,synchronized和lock

5 設計模式、spring類載入方式、例項儲存在哪、aop ioc、反射機制

6 類載入器,雙親委派模型,熱部署

7 jvm記憶體模型,記憶體結構、堆的分代演算法、堆的分割槽、gc演算法、gc過程。

8 tcp ip 七層模型 rest介面規範 get和post區別,長度,安全。

9 tcp ip的arp協議,兩個同一網路的主機如何獲得對方的mac地址。

10 負載均衡、高併發、高可用的架構

11 mysql的引擎區別

12 redis快取,redis的叢集部署,熱備份,主從備份,主從資料庫,hash對映找到知道指定節點。

13 瞭解雲端計算麼,瞭解雲容器docker麼,容器和虛擬機器的區別。

百度java程式設計師二面:

1自我介紹 專案中負責哪些 做了哪些

2專案中的資料庫備份,主從資料庫、叢集

3資料庫的索引原理,b+樹原理,trie樹引申,二叉查詢樹的原理

4海量資料中查詢一個單詞,分散式計算map reduce ,或者用hsah對映篩選部分結果

5java的抽象類和介面區別、java的hashmap,java的記憶體模型,分割槽,分代垃圾回收演算法。例項、常量放在哪裡。

6 int 4個位元組,double 8個位元組。

7 多執行緒中的wait和sleep區別,notify的作用

8 設計模式瞭解哪些,寫一個觀察者模式。實現兩個介面,一個是主題一個是觀察者,並寫出對應方法。

9寫一個生產者消費者佇列的方法,分別寫兩個類代表生產者和消費者,並且用佇列模擬其生產消費。用while迴圈和wait notify可以實現,但我忘記在佇列上加synchronize關鍵字,於是讓我再寫一題。寫的是:輸入一個字串,輸入第一個只出現一次的字元,寫出來了。

10:tcp ip的四次揮手 子網掩碼的作用, 子網掩碼(subnet mask)又叫 網路掩碼 、 地址掩碼 、子網路遮罩,它是一種用來指明一個 IP地址 的哪些位標識的是 主機 所在的子網,以及哪些位標識的是主機的位掩碼。子網掩碼不能單獨存在,它必須結合IP地址一起使用。子網掩碼只有一個作用,就是將某個IP地址劃分成 網路地址 和 主機地址 兩部分。

11 :瞭解linux麼,說一下linux的核心鎖?沒接觸過。

12 有沒有用過sed 使用shell指令碼寫一個將文字中的字元替換掉的指令碼,大概說了一下用grep || 替換。沒再問linux的

百度三面:

1自我介紹

2負責模組,哪些模組,專案一的架構,我說太久了忘了,說最近的專案。

3資料庫連線池用的是什麼,配置檔案呢,資料庫驅動怎麼下載的,持久層框架呢。

4為什麼要用資料庫連線池,有什麼好處。

5java的記憶體模型,變數和例項存在哪。java棧的作用,java的堆存什麼,方法區存什麼。

java的分代回收。

6專案如何部署到雲主機上,有什麼速度提升,為什麼有提升,答主要是裝置效能和頻寬。

7tomcat的配置,堆得初始大小是多少,達不知道。

8在網易實習的相關事項。

9問遇到過什麼難題。

10問臺灣交流經歷,學習內容。

11問在遇到問題時候的辦法。

12抗壓能力

13優缺點

14接受加班。

15遇到工作問題,同事不配合怎麼辦。

16快速上手工作的辦法。

17平時學習的方法,舉幾點。

18為什麼要換工作,個人,女友。詳情。

19什麼時候能來。

20職業規劃

轉載地址:http://www.jianshu.com/p/d4a19817dd02