1. 程式人生 > >2018秋招面經——C++後端

2018秋招面經——C++後端

某不知名二本財經院校秋招辛酸史。。。。

9.17(16:20)
先鋒商泰一面:(C++開發)
第一次面試,緊張到窒息….
1、 自我介紹
(說自己是非科班出身,面試官問:你覺得你作為一個分科班出身的,需要具備哪些知識才能彌補這種劣勢)
2、 什麼是面向物件的程式設計思想
(緊張到忘了自己說過什麼)
3、 棧和佇列
4、 廣度優先遍歷與深度優先遍歷
5、 寫一個數學題(打籃球計分)
結束的如此之快,太弱雞!

9.26(9:40)
歡聚時代yy一面(C++開發)
1、 自我介紹
2、 說一下C++中的運算子過載,什麼時候會用到運算子過載
3、 虛擬函式指標的作用
4、 在基類和派生類中有幾個虛擬函式表
5、 extend c的用法
6、 編譯連結過程
7、 程式執行起來的記憶體空間分配,靜態全域性變數存在哪
8、 為什麼選擇C++語言,C++和java的優缺點
9、 是否願意轉ios
10、 演算法題:有兩個相同的檔案(20G),一份在國外,一份在國內,怎樣做到檔案資料同步(檔案1被修改,檔案2也能知道)因為國際的流量太貴了,所以應該用什麼方法處理

9.27
好未來(C++開發)47分鐘
1、 自我介紹
2、 Mysql資料庫中的事務,怎樣給一個表中增加一列
3、 資料庫怎樣實現回滾
4、 Linux下的基本命令
5、 怎樣給使用者所在組讀寫可執行的許可權
6、 專案中有沒有加好友這個功能,怎麼實現
7、 手撕堆排序
8、 歸併排序
9、 層次遍歷二叉樹
10、 面向物件思想

9.27
盛大遊戲(遊戲客戶端開發)
1、 自我介紹
2、 圖形化介面
3、 遊戲引擎
4、 STL都看過哪些,適用場景
5、 虛解構函式的作用
6、 還有哪些比較擅長的,自己補充(網路、資料結構、linux)
投錯崗,g的很徹底

9.27
網龍(C++前端)
1、 專案具體實現(傳輸資料太大怎麼辦,專案裡有哪些類)
2、 講一下STL都看過哪些
3、 為什麼選擇學習C++
4、 C++封裝體現在哪
5、 大學比較困難的事,怎麼克服
6、 微觀經濟學這門課對你有什麼影響
7、 有什麼要問我的嗎

土巴兔(10.20)
1.自我介紹
2.stl原始碼說一下
3.紅黑樹查詢效率為什麼是O(logn)
4.寫一個strcpy( )函式實現
5.寫一個#define max(a,b)
6.有什麼要問的問題

上海微盟(10.21)
一面:(一小時)
1.自我介紹
2.做過哪些專案
3.C++中的虛繼承
4.寫#define offset( )和#define min(a,b)
5.函式與巨集的區別
6.模板的特例化和例項化
7.平時寫的測試單元
8.寫了一個題讓寫出測試因子和測試用例
9.寫一個類去實現上一個問題的校驗
10.寫一個strcpy( )函式
11.strcpy( )是安全的嗎?如果讓改進,再加一個引數你會怎麼解決

二面:(一小時)
1.自我介紹
2.做過哪些專案
3.select和epoll的區別,epoll做出的改進體現在哪
4.紅黑樹的建樹
5.epoll和select是不是阻塞的
6.模板和多型的適用場景
7.C++中強轉的四個函式
8.手撕單例模式
9.智慧指標
10.stl是不是執行緒安全的
11.(寫程式碼)列印字元
12.昨天的筆試題今天讓你來做會如何做(動態規劃)
13.shell指令碼會不會
14.近期要學習的書
15.問一個問題

北京XX控股(電面)
一面(10.27)
1.自我介紹
2.C++的多型
3.類裡的哪些函式需要寫成vitural函式(解構函式寫成vitural的好處)
4.說一下常用的資料結構
5.演算法會哪些
6.資料庫會哪些
7.有什麼要問
ps:感覺面試官給的空間很大,沒有指引,自己發揮

二面(10.31)
1.自我介紹
2.vector的底層實現
3.vector使用雷區,如何避免
4.死鎖
5.linux平時用的範圍
6.makefile會不會
7.資料庫會使用不

三面(10.31)HR面

百度作業幫(10.2)
一面 時間:30分鐘
1.自我介紹
2.Linux下的基本命令
3.手寫單例模式
4.兩個棧實現一個佇列
5.tcp和udp的區別
6.問一個問題

二面:20分鐘
1.自我介紹
2.專案
3.連結串列和陣列的區別
4.怎樣解決雜湊衝突
5.團隊裡有人不配合工作怎麼辦

小米(11.9)
一面:
共享桌面,寫了兩個程式碼題目
1、 實現一個單詞的順序翻轉,例如:“This is a wondful world”輸出為:“world wondful a is This”,每個單詞中間用空格隔開
2、 全排列:str = {a,b,c}
輸出:a b c
a c b
b a c
b c a
c a b
c b a

二面:
1、select和epoll的區別?
2、Epoll的ET和LT模式有什麼區別?
3、Vitural底層是怎麼實現的?
4、常用的泛型演算法會哪些?
5、TCP四次揮手的TIME_WAIT有什麼作用,為什麼會等2MSL的時間,MSL具體是什麼
6、Mysql中有哪些資料庫引擎
7、觀察者監聽者模式

寫一個程式碼題:
2 3 6 8 9 10 9 7 5 6
一組數字,先按照升序再降序,找出最大的數字

百度外賣12.2 視訊面
一面:一個小時(14:32)
1、 說一下C++中的關鍵字的作用,比如:static 、const、volatile
2、 陣列和連結串列的區別
3、 寫一個程式碼 int arr[10] = 1 2 3 4 5 6 7 8 9 10,實現 6 7 8 9 10 1 2 3 4
4、 設計模式知道哪些?
5、 手寫一個單例模式
6、 寫了幾個題,讓讀程式執行結果 (很基礎)
7、 Linux下的基本命令
8、 手寫sql語句,建表,查詢,新增行列
9、 grep的用法
10、 STL原始碼中的sort實現
11、 在網址框中輸入一個query會發生什麼
12、 做過哪些專案,專案中怎麼進行單元測試
13、 問一個問題

二面:一個小時 (16:01)
1、 自我介紹
2、 怎麼會想從C++開發轉到測試開發
3、 陣列和連結串列的區別
4、 共享桌面寫程式碼,手寫單鏈表刪除
5、 讀程題,求sizeof i++ –i這一類
6、 手寫程式碼,找出陣列中出現第一次不重複數字
7、 還有一些小的語法問題忘記了。。。問的都很簡單
8、 資料庫知道多少
9、 網路對哪塊比較熟悉(選取自己比較熟悉的模組,tcp/udp)
10、 怎麼會想投北京的公司

三面:50分鐘(19:11)
1. 自我介紹
2. 手寫socket程式設計的API
3. 共享桌面寫程式碼,兩個棧實現一個佇列
4. 有一個100G檔案存放在分散式平臺,每行有10列,如何得到按第三列排序的檔案
5. 百度首頁輸入一個query點選搜尋中間過程
6. 設計一個紅包系統如何考慮
7. 冪等性
8. 對紅包系統支付業務進行測試設計
9. 什麼時候畢業,什麼時候可以實習
10.有幾家公司offer
11. 有什麼問題要問
(總體面的比較簡單,但是秋招過後基本沒看,有些遺忘,好在都很基礎)