1. 程式人生 > >2018Java研發實習內推

2018Java研發實習內推

1.8 www 自我介紹 spfa 如何學習 約瑟夫 一個表 如何使用 qsort

作者:sdu王鏡鑫
鏈接:https://www.nowcoder.com/discuss/74573?type=0&order=4&pos=7&page=1
來源:牛客網

本人某末流985軟件工程大三本科生,參加了阿裏,美團百度的Java研發崗實習生內推,其中阿裏4月五號發了offer,美團4月3號發了口頭offer,百度3月20發了offer。其中阿裏一共是五面,三面技術兩面hr,美團一共四面,兩面技術兩面hr,百度一共三面兩面技術一面hr。

下面分享一下面試過程。

阿裏一面 77min:

1、自我介紹

2、介紹項目

3、大量數據,高並發訪問如何優化

4、熱點數據訪問優化

5、頻繁修改的數據如何保證一致性 nwr模型,cap理論等

6、平時如何學習

7、有沒有參與過開源項目

8、Java的基本數據類型有哪些?(忘了short)

9、實現多線程的三種方式,說說線程池

10、線程是不是開的越多越好,開多少合適,如何減少上下文切換開銷,如何寫個shell腳本獲取上下文切換的開銷?

11、樂觀鎖實現

12、jvm內存模型,1.6 1.7 1.8哪裏不同

13、gc算法,可達性分析

14、考慮對於老年代怎麽解決互聯網應用中gc停頓問題,怎麽解決內存碎片問題

15、約瑟夫問題 O(n)的算法

16、談談對spring ioc的理解

17、看過什麽框架源碼

阿裏二面 50min:

1、自我介紹

2、學的哪些課程

3、介紹項目

4、排序算法,具體說說qsort

5、avl樹怎麽構建,怎麽調整

6、最短路算法,地傑斯特拉,堆優化,正確性分析,spfa

7、說說鎖,sync,lock(公平鎖,非公平鎖,實現) 讀寫鎖,cas,aqs

8、Java泛型的理解,實現,和c++的不同

9、設計模式?你常用什麽設計模式

10、hashtable、hashmap,1.8的優化,concurrenthashmap 1.8的優化

11、1.8有什麽新特性?接口增強,拉姆達表達式等

12、談談對ioc的理解

13、談談對數據庫優化的理解?反範式合理冗余數據,合理建索引,使用覆蓋索引,問需不需要結合項目說?不用,談談就可以。

14、介紹一下nio,他好在哪裏,epoll實現 紅黑樹,和select poll的不同。介紹一下aio

15、有沒有沒有問到的亮點?

二面結束後不到五分鐘hr打來電話,簡單的進行了交流,家那裏的,大學都幹了什麽,平時怎麽做項目。

阿裏四面 50min 視頻面,交叉面:

1、自我介紹

2、說說項目

3、redis談談

4、說說es分詞算法

5、TF/IDF算法

6、jvm調優,命令行工具 jstack jmap

7、倒排索引

8、A4紙寫算法:n個球隊,每個球隊有一個自己的水平值,寫一個隨機函數,每次隨機獲取一個球隊,要求球隊的分布情況和他們的水平成正比

過了五天hr打來電話hr面,再過了三天發郵件給了offer


美團一面 28min:

1、自我介紹

2、項目介紹

3、es倒排索引

4、es分詞選型。ik分詞器

5、volatile關鍵字

6、hashmap原理

7、數據庫的鎖

8、樂觀鎖悲觀鎖適用場景,怎麽避免死鎖

9、如何實現lru

10、聚簇索引和二級索引的加鎖區別

美團二面 51min:

1、介紹項目

2、如何使用es將面試者進行分類

3、若幹個投資者,若幹個借款者,求最優的匹配策略(背包變形)

4、spring mvc如何處理一個請求

5、過濾器和攔截器


百度一面 47min:

1、自我介紹

2、arraylist和linkedlist的區別

3、map

4、bio和nio

5、處理粘包拆包問題

6、設計模式

7、單例模式的雙重校驗,為什麽使用volatile關鍵字

8、對於spring的理解

9、說一說鎖,原子變量怎麽實現的

10、阻塞隊列

11、說說線程池

12、threadlocal實現,如何結局的內存泄漏問題

13、說說對於數據庫設計優化的理解

14、redis和elasticsearch

百度二面 48min:

1、自我介紹

2、項目

3、兩個文件都是10G,裏面存著32位整數型,給8G內存,怎麽求交集

4、TF/IDF算法

5、一個表有id和mark兩個字段,給定一個用戶id,一個sql查出來他的排名,

6、gc算法,內存模型

7、AOP原理,好處

2018Java研發實習內推