百度一面 / 二面 總結

一面 :下午兩點開始 時長 80min

首先自我介紹

1 項目: 項目背景、技術 、架構 、爲什麼做這兩個項目、項目實現了什麼? 項目問的比較細:問了好多,優化呀,改進呀,藉助第三方模塊幹了啥? 具體、具體、再具體, 當時怎麼想的、怎麼設計的、進行測試沒? 能實現多強的功能?

主要講解了 在線評測 這個項目,對於文件壓縮,問的大多是思路,跟實現方法。

2 問我哈希, 哈希衝突, 哈希的底層實現, 哈希衝突的處理辦法, 有幾種方法,每種方法具體怎麼處理,什麼是哈希負載因子, 何時擴容、怎麼擴容

3 map 和 unordered_map 問我怎麼實現的, 有什麼優缺點

**4 學校學習情況, 專業課排名 **

** 5 參加 ACM大賽沒**

**6 ** 手撕代碼, 二分查找 : 注意 :異常處理和代碼耦合

7 算法 對各種算法的理解 , 比如 DFS、 BFS 、 遞歸回溯、 貪心、動態規劃

8 手撕代碼 : 組合問題: 在數組中找出和爲target的兩個數

我提供了 兩種思路 :  一  : DFS思路  		二:排序 + 對撞指針
後來面試官說了一種更高效的思路: 藉助 unordered_map  存儲
一趟遍歷就可以解決問題

一面 面試官表示還不錯:會向二面面試官推薦我

二面

一面結束3個小時後 收到二面通知 :

同一天下午7:10點開始二面 : 二面時長123min: 二面問的細、廣

二面涉及 : C語言 C++語言 python 語言 MySQL html

自我介紹

1 : 項目: 在線評測:

1 實現了什麼; 支持多少的用戶同時訪問: 底層怎麼實現的,都做了什麼?
2 時間和內存限制怎麼處理的?
3 測試用例怎麼處理的
4 都支持什麼語言?
5 遇到哪些問題?

2 文件壓縮

1 都遇到什麼問題?爲什麼遇到這樣的問題:怎麼解決的?
2 什麼時候做的?

2 問我什麼時候能開始實習?最短實習多長時間? 問我願不願意轉行做 golang 語言? 需要多久能夠掌握golang的基礎

**3 基礎 指令 : top(這個問的細) free awk seed 當前進程怎麼放到後臺運行, 怎麼獲取 第十行 **

4 具體說 進程 和線程, 往細的說 , 說完他繼續問我:
** 進程和線程的區別 **
進程可以調度嗎?
上下文信息都包括什麼?
線程切換需要保存上下文信息嗎
瞭解協程嗎? 說一說我是怎麼理解協程的 ? 然後就說的比較細,主要從python 方面談起 : 提到python的迭代器 : 生成器 : gevent等
** 談談 協程 和 進程線程的 區別

5 網絡 : 瀏覽器輸入一個www.baidu.com 後發生的事情,詳細說
我就開始 bulabula…我說的比較細: 然後他聽了會打斷我了個問題之後 說,感覺我這方面沒問題

6又談到 TCP / UDP HTTP tcp爲什麼可靠?
我又開始 bulabulabula…說了一會之後 他有打斷我,說行了,感覺沒啥問題,

7 HTTP 可以用UDP實現嗎? 答案是可以的,但不能保證數據傳輸可靠

** 8算法 TopK 問題 怎麼解決**
我提供了兩種思路:
1 :哈希(重複數據處理會有問題)
2 :最小堆
我問要不要寫代碼呢, 他拒絕了…
** 算法 9 跳臺階問題 **

** 10 讓我打開leetcode 看我刷了多少道題: 汗 好尷尬 只做了163道**

算法11 在 leetcode 上 給我找了一道難度中等的題 :讓我做: 二叉樹的右視圖 : 我思路沒問題: 代碼出了些問題:沒運行出來

**算法 12 : 求數組中每個數字出現的次數 ** 我說可以用哈希思想

算法 13 找數組中出現次數超過一半的數字
我提供了 兩種思路:
1 快排O(n lgN)
2 投票法 O(n) O(1)
面試官說了 一種受快排思想 啓發的思想 ,直接 用一半位置開始一趟快排就可以了
**14 MySQL **
索引都有什麼索引?
說一說聚簇索引 : 不知道 汗
問我 用過redie嗎? 沒用過(我只知道知道是啥 ,就是沒用過) 汗

MySQL 答的不好: 我簡歷上只是說我 瞭解數據庫,沒敢說熟悉。

**15 問我要不要問他什麼? **
1 我問了 C++協程
2 golang的難易度

二面 結束 : 面試官說 會和一面面試官交流, 要是有下一面的話,就是他們經理親自面試了、期待ing

一天之內 連面 一面、二面第一次經歷, 長達兩個多小時的二面,也第一次遇到, 面完感覺好累啊。

百度的面試官真的好 和藹呀 ,超級喜歡了、圈粉圈粉。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章