2018秋招面经:斗鱼、滴滴、百度、美团、小米、腾讯
一、斗魚(9.8,現場筆試+技術面+hr面)
現場筆試:(題目比較基礎)
1、十幾道C++基礎簡答題或改錯題
2、一道字符串分割的算法題
3、一道string類的實現
4、一道快排的實現
斗魚技術面:(2h+,其實就是將筆試題從上往下問,并且做很多拓展和延伸,記錄一些我有印象的)
1、c++多態的種類、C語言的多態怎么實現
2、struct與類的區別
3、union和struct的區別,union如何知道當前使用的是哪一個元素,如何設計
4、vector和map刪除時,迭代器失效如何解決
5、線程安全的單例模式(注意volatile和double-check)
6、排序時衡量性能的標準
7、復雜的字節對齊計算(需要分32位和64位討論,但兩種系統最終結果相同,pragma pack 1的應用場景(節省空間,公司統一標準)?
8、用戶有兩個進程,分別運行while(1){},系統如何切換(時鐘中斷,進一步延伸到內中斷,外中斷)
9、項目中有用到模擬退火算法,讓我講了下思路與實現
10、虛函數的實現
hr面:(0.5h)
1、個人情況
2、家庭情況
3、手上offer情況
4、發展規劃
二、 滴滴(9.12,3技術+1hr面)
技術一面(50min+, 只記錄一些有印象的):
1、項目
2、B+樹、B-樹的區別
3、數據庫隔離級別,幻讀和不可重復讀的區別
4、有hell, well, hello, world等字符串組,現在問能否拼接成helloworld,代碼實現
5、快排
6、線程安全的單例模式
技術二面(1h15min, 純懟算法和智力題,好難):
1、25匹馬賽跑,有一個賽場,只有五個賽道,沒有計時器,只能通過目測來記錄快慢,求出求3快的馬要多少場比賽?
2、kmp算法next數組的求解思路
3、數組中有三個數字出現超過3/4,求著三個數字
4、1到n+2個數組中缺了兩個數,如何用O(n)時間,O(1)空間找到這兩個數字
5、一條線段長為1,隨機選兩個點,將改線段分為三段,三段能成三角形的概率是多少?
6、有一個教授,他三個學生,腦袋背后分別各寫了一個數字,其中一個數字是另外兩個數字的和,經過幾輪后,有一個學生猜出了自己的數字請問是什么原因?
7、B+樹做索引時,B+樹通常高度為多少層?要參考哪些條件?
技術三面:(40min)
1、問我喜歡什么運動,說籃球,聊了籃球和工作,大概近10分鐘,后來知道面試官以前是校隊,校賽拿mvp的大神,怪不得問我拿過什么籃球的榮譽
2、一個3L的杯子,一個5L的杯子,如何倒出4L的水,要求兩種方法
3、情景題:周一領導布置任務,周五完成,周三發現完成不了,你會怎么處理
4、對BAT三家的看法,現在看好誰
5、介意學機器學習嗎?(怎么可能介意,求之不得)
6、問我有什么問題要問(我說這不是技術面嗎?怎么沒怎么問技術,結果面試官加了第七題)
7、二維數組行優先讀取和列優先讀取哪個快,從操作系統層面解釋(從減少缺頁中斷的角度出發即可)
hr面(都大同小異)
三、百度(9.17/9.19, 三輪技術面,沒有hr面)
技術一面(1.5h,面試官平時是負責終面的boss,聊的不完全是技術,有很多內容記不住了)
1、聊了項目。面試官很感興趣,聊了半個小時
2、操作系統,null指針為什么不可訪問(涉及到段頁式內存管理中,內存分配問題)
3、socket syn***原理,超時重傳的次數及時間間隔
技術二面(50min)
1、項目
2、select/poll/epoll
3、線程池
4、ipc,以及共享內存使用的時候需要注意什么
5、手寫代碼,題目記不清了
技術三面(電話面35min左右)
1、簡歷細細過一遍
2、cat file | grep x 創建幾個進程 他們是什么關系
3、父子進程間,子進程退出后會發生什么
4、如果父進程不需要捕獲子進程退出消息怎么辦
5、pcb包括什么
6、有一個文件,每一行都有一個IP范圍,以及對應城市。你需要檢測,同一個城市的IP是否沖突。不同的城市IP相同不算沖突。
7、未來的打算,自我評價,職業生涯規劃
四、美團(9.19/9.21)
初試一面
1、自我介紹
2、項目(問的很深)
3、數據庫實現原理 B+樹 B-樹區別
4、數據庫索引種類
5、接口響應時間由20 ms偶發提高到1000ms可能是什么原因
6、左聯結,右聯結,數據庫隔離級別
7、數組中找出和為target的兩個數的位置
8、Linux命令
9、對Java的了解
還有一些忘了
初試二面:
1、自我介紹
2、項目
3、模擬退火算法,爬山算法,應用場景。。
4、tcp udp,udp的各種應用場景,udp如何實現可靠傳輸
5、syn***
6、***怎么越過防火墻,對防火墻內部計算機進行***
7、設計餐館的數據庫,需要幾張表
8、stl有哪些優缺點 為什么有時候很慢
9、設計模式,觀察者模式
10、堆排的實現
11、聊了下個人情況
復試一面:
1、自我介紹
2、socket11種狀態,詳細介紹
3、阻塞與非阻塞
4、同步與異步
5、connect可以異步嗎?
6、如何看待上層應用編程與低層架構編程?
7、看什么書,怎么學習的
還有一些忘記了
復試二面(hr面)
大同小異,不過美團hr給我印象特別好,特別主動介紹了公司的各種情況,好評
五、小米(9.20,只有兩輪技術面)
技術一面(35min, 體驗不好。一個標間里面試,hr在旁邊整理資料,下一個面試者竟然就在房間看我們面試。。)
1、自我介紹
2、介紹操作系統的段頁式內存管理
3、socket三次握手,以及半連接的含義,可能出現的問題,以及處理方案
4、寫代碼,正則表達式模式匹配
技術二面(35min):
1、自我介紹
2、模擬退火算法介紹
3、手寫代碼:8*8的網格中,一個皇后選擇一個位置后,她橫豎斜三條直線上都不允許放其他皇后,問放8個皇后有幾種方式
4、設計題,有一個車庫,里面可以停大車和小車,可以自己拓展需要的信息(我拓展了計費等服務)
六、騰訊(9.21/9.23/9.24,兩輪技術面+hr面):
技術一面(45min左右):
1、自我介紹
2、項目
3、進程與線程的區別(這里我說的很細致)
4、管道一般用途,如何用管道實現非親緣進程間通信(有名管道)
5、實現memcpy(注意區分pSrc和pDes重疊的情況)
6、環形鏈表檢測,以及入口求解,手推公式
7、智力題:A房間三個開關,控制著B房間三個燈,只允許進一次A,進一次B,如何確定開關與電燈的對應情況
8、問其他offer情況
技術二面(45min左右):
1、最滿意的項目,詳細介紹
2、手寫代碼:有一個數字N,由1,2,3,4四種數字組成,請問怎么調整其順序,可以使其整除7
3、手寫代碼:map中,刪除key值為素數的元素,
4、socket中,緩沖區只有2k,要接受4k的數據,怎么處理,代碼實現
5、linux里ipc有哪些
hr面(18min)
1、自我介紹
2、如果有人質疑你非計算機專業的,你會怎么看
3、學習了哪些課程,怎么自學
4、家庭情況,職業規劃
5、對我騎行2000km的經歷感興趣,聊了下
6、讓我提問
七、華為(華為暑期實習生,只參加了實習答辯)
寫在最后
所有公司投遞崗位的都是C++軟件研發工程師/后臺研發工程師。截止2017.9.26,確認的有華為、斗魚、美團、百度。等通知的有騰訊,小米,滴滴。由于已經有一些offer確認,京東、招銀網絡、網易互娛面試沒有去參加了。
本人非計算機專業出身,讀研階段才開始接觸編程,不過讀研期間付出了比別人更多的努力。因此,付出總會有回報的,希望大家也繼續努力,也預祝找工作的同學也都能拿到滿意offer,加油!
轉載于:https://blog.51cto.com/13360987/1970032
總結
以上是生活随笔為你收集整理的2018秋招面经:斗鱼、滴滴、百度、美团、小米、腾讯的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 判断页面在手机和pc打开的方法
- 下一篇: 在Github上面搭建一个自己域名的He