昨天正式確認了百度的offer,宣告着個人秋招正式結束了,雖然個人秋招還算是比較順利,沒有他們所說的那樣痛苦不堪,可是我仍是想把我面試過程當中經歷的面試題目共享出來,供你們參考,秋招面試的難度總體上要比實習略難一些,不過只要認真準備的話,我以爲仍是很容易拿到心儀的offer的,下面我將給出我秋招面試過程當中經歷的全部面試過程,僅供參考。html
後臺開發工程師,Java開發。linux
美團點評是實習轉正,總體難度並不難,下午三點安排在美團B座7樓面試廳進行面試的,一個酷酷的程序員小哥哥面試的,首先介紹的是我實習這幾個月作的東西,以及遇到的一些困難。在面試過程當中,會對你實習中遇到的困難和挑戰各類深問,建議這個題型仍是要多準備準備。畫了項目的架構圖,以及實現的技術的一些細節,基礎也問了一些,好比計算機網絡,三次握手,TCP擁塞控制和流量控制,數據庫的索引機制等,最後出了一道算法題,三數之和,這是LeetCode的原題,能夠參考個人這篇博客:程序員
http://www.javashuo.com/article/p-gszzcqdt-gp.html面試
數據挖掘和機器學習研發工程師,大數據架構方向。redis
百度是7月31號面試的,印象比較深,當時還在美團實習,內推了百度提早批,就通知31號下午去百度科技園面試,當時也沒想着必定能夠過,就打算去試試,因而中午請假過去了。在路上還在看面試相關資料,由於以前確實沒複習,就想着聽天由命吧。到了百度,去早了,就在樓下待了一個小時,兩點才被叫進去進行面試,面試地點仍是一個不錯的會議室,一共進行了三面。算法
我遇到的百度的套路是上來先自我介紹,大概說一下我的狀況,面試官就問,你數據結構和算法怎麼樣,我說還不錯,而後直接開始作題,印象裏一下作了四道算法題,都是在紙上手撕代碼,是算法都作出來以後才進行的後面的面試,我在想若是我算法沒作好,極可能就謝謝再見了。四道算法題目不是很難,主要仍是考察思惟邏輯和基礎吧。數據庫
快速排序,基於單鏈表實現(傳統的先後指針的方式實現起來比較困難)
給定無序數組,查找中位數(基於堆排序)
撲克牌第一張放桌子,第二張放到最後,第三張放桌子,第四張放在最後,以此類推,求最後桌子上上1到k,還原原來的撲克牌什麼樣
徹底揹包問題
第一題能夠參考個人這篇博客:編程
http://www.javashuo.com/article/p-ajbizfki-cg.html數組
第二題的解題思路是:緩存
首先將數組的前(n+1)/2個元素創建一個小頂堆。
而後,對於下一個元素,和堆頂的元素比較,若是小於等於,丟棄之,接着看下一個元素。若是大於,則用該元素取代堆頂,再調整堆,接着看下一個元素。重複這個步驟,直到數組爲空。
當數組都遍歷完了,那麼,堆頂的元素便是中位數。
思路有了,實現起來仍是有必定複雜度的,要多注意。
第三題第四題都是常見題,第四題能夠參考個人博客:
http://www.javashuo.com/article/p-wwzkecyj-bv.html
剩下的就是考察一些常見知識點了,包括基礎知識和框架的,大體以下:
介紹一下kafka分區,內部原理
介紹實習項目,具體
Hashmap原理
設計一種存儲數據結構,使得相似於pandas那種取數據
介紹大數據框架體系,流式處理流程
流式處理流程
裝飾器模式,接口和抽象類區別如何設計
maven打包流程,如何打出相似tomcat的數據結構
說項目和項目難點
介紹百度信息流推薦
本身最大的優點
遇到哈希衝突怎麼辦
NLP相關知識,智能問答
推薦算法介紹,協同過濾
百度一面二面三面是在一塊兒面的,面完就直接給我要了身份證號,說應該沒問題,哈哈,就這樣肯定了百度offer,仍是挺幸運的。
數據研發工程師,離線大數據處理。
映客直播是一箇中午面試的,吃了飯,就順便過去了,由於當時在美團實習,而映客就在望京附近,特別近,騎自行車過去的。映客沒有本身的樓,是一個大廈裏面,進去還得登記。上去了感受裏面裝修還不錯,有個很大的貓頭鷹,等了一會,面試官就來了,剛來感受人挺嚴肅,聊了一會感受我會的挺多,就跟我扯了點別的,哈哈~問的東西不是很難,比較基礎,固然也手撕代碼了。
本身實現多線程MQ,用數組實現隊列,保障數據安全性加鎖
說一下mapreduce的shuffle機制,map階段是快排,reduce階段是歸併排序
說說產生數據傾斜怎麼辦,優化措施(重寫partition,加上負載因子,再次哈希)
什麼狀況下會產生數據傾斜,好比group by,join,count(distinct)等
寫SQL語句,左鏈接關聯查詢
寫500億top 10問題,寫hive
問我會不會執行到order by語句
線程有哪幾種狀態
數據傾斜問的不少,你們能夠總結一下,參考這篇博客:
http://www.javashuo.com/article/p-glwnjmcp-gh.html
就面了一面,面試官對個人評價還不錯,面試完就讓我過去先實習,我說實在抱歉,還在美團呢,並且得先回學校作畢設,他說他們比較缺人,但願我快點過來,我說實在抱歉,他們就說沒事,等12月份還能夠再聊聊。
數據研發工程師,實時計算。
仍是想說,阿里真的面試時間太長了,總共得一個月,算上加面,經歷了六面。除了一面是現場,剩下的都是遠程電話面試,雖然中間拉了很長時間,不過好在最後也拿到了阿里offer。
當時也是八月份,阿里北京這邊組織了一個夏令營,由於也在望京,並且是美團旁邊,我就過去參加了,上午扯了好多阿里有多牛逼,下午就開始面試了,這只是一面,估計是爲了挑選候選人吧。我是最後過去的,我去的時候都沒多少人了,而後跟個人一面面試官大概談了談,主要是瞭解一下,面試官人很好,後面也幫助了我不少,很感激他。主要問的是實習經歷和項目經歷,而後問了下對大數據體系的見解,一面仍是很簡單的。
從二面開始,就變得難了,問的開始愈來愈深了,各類基礎知識問的愈來愈多,果真符合阿里的做風,阿里就是特別重視基礎,並且各類知識點要求也很高。
算法最長重複子串
說一下成長最快的收穫最大的項目
分佈式緩存的負載均衡
session共享
一致性哈希算法
離線hadoop原理,寫文件流程,何時都返回成功,說項目
實時storm和flink原理,編程模型,說項目
Top k解決方案
如何數據去重,set在內存宕機怎麼辦
你瞭解的hbase按照列存儲和關係數據庫行存儲區別
併發方案,針對優酷世界盃
lock和synchronized區別
兩個線程交替打印字符串
實現NIO模型,怎麼設計
如何涉及分佈式可靠的消息隊列,怎麼保障
職業規劃
介紹實習項目,mafka如何保障消息不丟失,發送一次
介紹離線大數據項目,數據處理用hive的場景
介紹課題項目,redis應用場景,存儲方案
Storm編程模型
Python2和3的區別,多線程咋回事
Hive如何防止數據傾斜,對Hive的理解
MapReduce,map階段,reduce階段,combiner階段
Yarn階段介紹
集中在同一個reduce,分桶
Hashmap,Hashtable,concurrenthashmap
數據庫建模
Hive分組取top k請求
如何處理url
數據倉庫
數據庫索引
建議要是面試阿里的話,先要把基礎知識都要認真過一遍,否則很容易被虐,哈哈,阿里算法也會考察,不過感受沒有百度頭條那麼多,相反框架原理啥的,Java基礎啥的反而問的比其餘公司更深。
服務端開發工程師,Java方向。
這個公司是聽同窗說的,貌似給錢不少,就去試了一下,感受這個公司特別重視算法。人文關懷很棒,去了有免費的零食和水果,你們坐在一塊兒吃東西,叫到誰誰就去面試,一共經歷了兩面。第一面上去大概自我介紹完,就直接寫算法,由於我寫的比較快,就多寫了一道題,當時沒用遞歸的方式,結果面試官看個人代碼看了很久,說寫的太複雜,哈哈~二面面試官是經理級別的,說普通話不標準,感受不太懂大數據,他讓我介紹項目,我說了個大數據的項目,感受興趣不大。後來就全程在寫一道ringbuffer的題目,猿輔導的面試題目以下:
自我介紹,說一下項目
JVM問了一些,JVM模型啥的
HashMap原理,底層
線程池的內部實現原理
Top K問題
負載均衡問了一些
一增一減兩個鏈表合併
最長迴文子串
兩個變量實現ringbuffer
Hadoop讀寫文件過程
最大問題和挑戰
ringbuffer那道題是環形隊列,即採用兩個變量判斷隊列爲空,判斷隊列爲滿。能夠參考個人博客:
http://www.javashuo.com/article/p-svcfhgwe-ew.html
後臺研發工程師,C++和Java方向。
騰訊先是騰訊雲,存儲方向的部門面的,全程在問C++,我說明本身好久不用C++了,面試官開始問我不少基礎,不過當我說到Java一些術語,面試官一臉懵逼,他說的一些術語,我也一臉懵逼,就這麼尷尬了一個小時,哈哈,不過算法題和基礎知識答得還不錯。
字符串判斷包含
判斷一棵樹是否是另外一個子樹
大頭傳輸和小頭傳輸
三次握手,滑動窗口
epoll,select模型
TCP和UDP
Linux top和ps
操做日誌的一些指令
紅黑樹
SortSet
進程通訊的方式,哪一種方式速度最快
後來部門轉到了TEG,直播方向,此次是Java,全程很順利,面試官的問題基本答得都不錯。主要是Java相關的技術,包括JVM,還有hashmap原理,1.7和1.8的區別,字節移位,主要涉及一道bitmap的題目,能夠參考這篇博客:
http://www.javashuo.com/article/p-romvzniz-cv.html
算法工程師,機器學習方向。
AiBee是一個創業公司,主要是搞AI的,好像創始人是原百度的高管。當時看到羣裏有人內推,就過去了。可是感受面試安排的不合理,過去了以後,hr說面試官在開會,在那裏等了一個多小時,面試官纔來,都快中午了,就草草問了兩道題目,就結束了,總體的面試體驗不是很好,不知作別人什麼感覺。
KMeans,手動實現算法
判斷一個點是否是在三角形內部,寫算法
查找含有某些關鍵字的進程,一塊兒殺掉(linux指令)
大數據研發工程師,分佈式計算。
自我介紹,詳細介紹項目,主要是美團實習項目,而後畫項目架構圖。
五道編程題目:
1.設計一個數據結構能夠存儲一組整型數,而且可以O(1)時間查找中位數和O(logN) add操做。
原本想的是採用map的結構,最後實際上是採用堆進行存儲,在Java中能夠看一下PriorityQueue,內部是採用堆進行實現的。
2.
中序遍歷,存儲根節點到每一個葉子節點的路徑。
3.求平方根,兩種方式。
# 輸入:整數 n
# 輸出:n 的平方根
# 精度 10^(-5),定義域:實數
(1)二分法
public static double sqrt(double t, Double precise) { double low = 0, high = t, middle, squre, prec = precise != null ? precise : 1e-7; if ( t < 0 ) { throw new RuntimeException("Negetive number cannot have a sqrt root."); } while ( high - low > prec ) { middle = ( low + high ) / 2; squre = middle * middle; if ( squre > t ) { high = middle; } else { low = middle; } } return ( low + high ) / 2; }
(2)牛頓迭代法
public static double sqrt_ ( double t, Double precise) { double x0 = t, x1, differ, prec = precise != null ? precise : 1e-7; while ( true ) { x1 = ( x0 * x0 + t ) / ( 2 * x0 ); differ = x1 * x1 - t; if ( differ <= prec && differ >= -prec ) { return x1; } x0 = x1; } }
(4)兩數之和爲定值
參考:http://www.javashuo.com/article/p-gszzcqdt-gp.html
(5)遍歷一遍用兩個指針實現刪除倒數第k個單鏈表節點
class Node{ int val; Node next; } public void delete(Node head,int num){ Node p1 = head; Node p2 = head; int index = 0; while(p1 != null){ p1 = p1.next; index++; if(index > num){ p2 = p2.next; } } if(p2.next == null){ p2 = null; }else{ p2.val = p2.next.val; p2.next = p2.next.next; } }
三面過了幾天,上來一樣是介紹項目,自我介紹一系列,感受宜信的面試過程沒有過於重視基礎知識,主要仍是圍繞算法展開,最後一樣來了一道算法題,求若干個線段的最大重合個數,能夠詳見個人另外一篇博客:
https://www.cnblogs.com/DarrenChan/p/9688175.html
宜信的面試比較注重算法,尤爲是研發崗,按照同一個模式進行面試,具體到大數據開發仍是Java開發等,都是去了之後再進行分配,總體來看這個公司的面試仍是有必定難度,公司在互聯網金融也有必定前途。
大數據研發工程師,實時計算。
快手是有一個學長內推的,遠程面試的,總體感受不是很難,感受快手最近如日中天,這個公司仍是不錯的。有感興趣的小夥伴能夠考慮加入,快手比較重視基礎,問的東西和阿里有點相似,整體來看仍是偏難的。
印象裏面的面試題以下:
快排 SQL,統計次日從新登陸的人的個數(和第一天相比) Hadoop原理 網絡,操做系統常見題目 2.5億個數全排序 項目,top k JVM內存模型
大數據研發工程師,方向隨機。
由於以前實習過了華爲,沒有去,因此通知只須要參加一輪終面便可。由於本身被選入了華爲的一個「領鷹計劃」,最後簽約的時候還給漲薪了,固然最後沒有籤華爲,以爲華爲仍是不錯的,但是我仍是想去互聯網公司。華爲面了一面,此次主要問了問項目,基礎知識也問了一下,反正不難,跟聊天似的,華爲校招看學歷,看來國防科大的牌子仍是挺有用的,面試題想不起來了,總之,挺簡單的,主要是聊爲主,面試官人很好。
有幾個公司,筆試過了沒有面試,好比頭條,第四範式,搜狗,搜狐,主要是後面要準備答辯了,沒有那麼多時間了,否則仍是想好好準備,面試一下。
總之,秋招面試算是結束了,這一年,是我記憶深入的一年,經過面試,個人水平提升了不少,但願去了公司還能好好努力,下一次,爭取能夠面試別人,嘿嘿~還沒找到工做的小夥伴,加油哈!