當前位置:編程學習大全網 - 源碼下載 - 我的百度面經(***8次面試)

我的百度面經(***8次面試)

百度智能雲 數據庫部門

壹面:

1 數據庫的事務,四個性質說壹下,分別有什麽用,怎麽實現的。壹致性沒講好。

2 講到了redo和undo日誌,問我分別有什麽用,說redo日誌說錯了。

3 數據庫的隔離性如何保證,使用悲觀鎖和樂觀鎖有何區別。MVCC的設計目的是什麽,怎麽使用版本號判斷數據的可見性。

4 問了壹道算法,1到N的所有數字,按照字典序打印,怎麽做。

說了用數組排序,問復雜度,扯了半天。

怎麽優化,按照數字特征順序打印,問這個東西和什麽結構比較像。提示是樹,然後說了個多叉樹,問我怎麽實現,最後其實使用dfs遍歷樹的每個分支。

5 多線程並發的同步實現,有兩個方法,每個方法裏有a部分代碼和b部分代碼,我要讓兩個線程分別執行兩個方法,並且讓他們運行完a部分代碼再壹起向下執行,如何實現。

6 我說了用cyclicbarrier實現,互相等待await。

然後他問我怎麽用信號量實現,並且提示可以再用壹個線程。

然後我說了個方案。

7 問了項目

8 如何把優化遞歸的代碼

改成尾遞歸或者循環。

面試官說不是,引導說用棧實現遞歸。

問我棧中需要壓入哪些數據。他說應該是方法參數,返回值,以及返回地址。

二面:

1 自我介紹,項目 10分鐘過去

2 服務器如何負載均衡,有哪些算法,哪個比較好,壹致性哈希原理,怎麽避免DDOS攻擊請求打到少數機器。

3 TCP連接中的三次握手和四次揮手,四次揮手的最後壹個ack的作用是什麽,為什麽要time wait,為什麽是2msl。

4 數據庫的備份和恢復怎麽實現的,主從復制怎麽做的,什麽時候會出現數據不壹致,如何解決。

5 今天面試太多了,記不清了。。。

6 開源的技術看過用過麽,分布式存儲的了解麽。

7 想做什麽方向的開發。

8 Linux查看cpu占用率高的進程

9 查看占用某端口的進程和某進程監聽的端口

10 如何查詢日誌文件中的所有ip,正則表達式

三面(8.3號更新):

數據庫部門真的很嚴格,問題都挺難的。

1 講壹下項目

2 平時了解什麽操作系統 Linux,說壹下Linux排查問題常用的命令,ps,top,netstat,free,du等等

3 Linux的內存管理算法,問了壹下是不是頁面置換算法,他說是。 說了lru和fifo,問我lru有什麽缺點,沒答上來。

4 Linux的文件系統了解麽,講了壹下inode節點,文件和目錄的原理。他問我了不了解具體的文件系統ext2,ext3,答不會。。

5 進程通信方式有哪些,問我分別怎麽使用,管道有哪些類型,各有什麽優缺點。

6 問我服務器硬件了解麽。。壹臉懵逼,問了我懂不懂Raid,瞎扯了幾句就說不懂了。

7 shell了解麽,沒怎麽寫過。

8 聽說妳會Java,說壹下JVM內存模型把,有哪些區,分別幹什麽的

9 說壹下gc算法,分代回收說下。

10 設計模式了解麽,說了7種,問我分別怎麽用,實際應用過嗎,稍微扯了壹下。

11 MySQL的引擎講壹下,有什麽區別,使用場景呢。

12 查詢最新的10條數據,想了好壹會,order by id desc limit 10

13 MySQL的union all和union有什麽區別,我瞎掰了壹下,應該不對。

14 MySQL有哪幾種join方式,底層原理是什麽,答不會,只知道表現形式。

15 Redis了解哪些啊,數據結構和基本原理把。 問我Redis怎麽做集群,答了主從哨兵和cluster。 Redis的持久化怎麽做,aof和rdb,有什麽區別,有什麽優缺點。

16 Redis使用哨兵部署會有什麽問題,我說需要擴容的話還是得集群部署。

17 分布式系統了解麽,說壹下Hadoop了解啥。 我說基本組件稍微了解過,簡單搭過環境。

18 MapReduce的combiner幹啥的,我說是合並結果的,問我啥時候會用到,答不知道。

19 Hadoop分發任務時,有個job失敗了,hadoop會怎麽處理,我答不知道,猜是會繼續執行。。

20 hadoop分發任務,如果有壹個節點特別慢拉慢了整體速度怎麽辦。我猜測是通過yarn分配相同的資源給每個任務,可以避免這種情況,他好像不太滿意。

21 hadoop答得很爛。問了我兩個10g文件比較,2g內存,重復率很高,篩選出不同的內容。我說拆成十份hash,每份兩兩比較hash的結果集,貌似他說OK。

22 排序算法了解哪些,巴拉巴拉。

23 用隊列計算壹個樹的高度,我說用層次遍歷記錄節點高度。

24 壹個黑名單集合,數據量很大,快速查詢壹個值是否在集合裏,怎麽設計,我說布隆過濾器。

25 還是上壹題,說這個黑名單可能需要動態地增刪改,如何設計才能避免訪問響應太慢。我沒思路,瞎扯了壹下加硬件,用內存存,都被駁回了。然後他說算了。

26 上壹題的黑名單做成分布式,怎麽做。說了分片的方案,根據地址的hash值確定分片所在節點。

27 分布式數據庫了解麽,我不太明白他問的是啥,說不了解,感覺應該是問數據庫的分布式方案。

28 有什麽想問的,據他所說還有2-3輪面試,驚了。

全程50分鐘,可以說是迄今為止難度最大的壹個?

百度智能雲 賬號和消息部門

壹面:

1 項目

2 講壹下AOP吧

3 動態***和靜態***有什麽區別

4 TCP和IP報文是否會分片,分別在什麽情況下會分片。

TCP分包之後是否還會進行ip分片

5 做個題

無限長軌道。兩輛車同方向開,車會滴水,怎麽讓他們相遇。這題簡直像腦筋急轉彎。

6 寫壹個斐波那契數列

遞歸式,要求改進

dp方式,要求優化空間

用三個變量代替數組進行dp,要求改進

我說數學公式,OK。

7 講壹下Linux的內存結構,我說只會JVM的,他讓我說壹下。

兩者的內存如何映射,是什麽關系,不會。

8 沒了

二面

1 項目講壹下,10多分鐘去了。

2 排序算法,復雜度,比較。快排的空間復雜度是logn

3 講壹下OSI七層模型,我說了5層模型,然後他讓我再補充壹下,問了每層的作用,問了wifi屬於哪壹層。

4 線程間的同步用什麽方式,說了object方法。

問我使用hashmap時重寫哪兩個方法,為什麽要重寫,巴拉巴拉,什麽場景下重寫。

5 平時用過什麽數據結構,list用哪些有啥區別。

6 Spring中的ioc和aop。ioc的註解有哪些。

autowired和resource有什麽區別,作用域有哪些。

autowired如何配置兩個類中的壹個嗎

7 寫壹個單例模式,有點忘卻了,巴拉巴拉搞出壹個雙重檢測的,中間改了多次。

8 Java會有內存泄漏嗎,三個區分別什麽情況下會產生內存泄漏

百度智能雲

好像是基礎研發工程師的崗位

壹面

1 項目

2 隊列和棧區別

3 兩個棧實現隊列,兩個棧實現最小值棧

4 數據庫的事務性質,如何實現這些性質

5 事務隔離級別有哪些,默認是什麽級別。

6 已提交讀有什麽問題,用於什麽場景

7 二叉樹了解麽,平衡二叉樹呢,有什麽場景會用到呢。

8 僵屍進程和孤兒進程是什麽,分別有什麽危害。

9 主從復制怎麽實現。

10 Redis妳用來做什麽,為什麽不用mq做異步隊列

11 分布式文件系統了解麽,HDFS講壹下原理

12 Java中壹般用什麽類型表示價格。

13 Java如何把byte類型轉換成字符串

14 Java的string類型為什麽是不可變的

15 有什麽問題

百度核心搜索

壹面:

1 自我介紹

2 docker和k8s了解多少

3 研究生學了哪些課程

4 操作系統了解麽,講壹下進程和線程

5 死鎖和處理方式

6 內存,虛擬內存和頁面置換 7 網絡了解麽,講壹下三次握手和四次揮手

8 數據庫了解多少,mysql索引,事務,鎖講了壹些

9 Redis呢,講了壹下數據結構,持久化方式,使用場景

10 分布式了解哪些,負載均衡有哪些方式,說了dns,nginx,lvs和硬件,壹致性問題怎麽解決,說了2pc,3pc,raft和paxos,zab

10 mysql大表數據查詢,怎麽優化,分表,分庫。

11單鏈表判環 使用快慢指針解決

12 完全二叉樹判斷:

二面:

1 項目

2 docker和kubenetes的原理和了解程度

3 docker的cgroup了解麽

4 kubenetes的架構,擴容是怎麽完成的。

5 Java的四種引用

6 Java的線程通信方式

7 Linux的進程通信方式

8 Java的線程池

9 算法 1 - N + 1這些數中取出N個,問剩下的是哪個。。 我說加起來相減,面試官說取巧了,不能這樣。 我說比較數組下標,他還是說取巧。

於是我讓他提示我壹下,他說了排序再找。。額

然後想了兩個空間換時間的辦法,壹個是用hashmap遍歷兩個數組。壹個是合並數組後統計數字出現次數,也是hashmap

10 給定壹串數字,找出所有可能的IP地址組合,比如192168111,組合是192.168.1.11,192.168.11.1。 應該LeetCode的題。之前自己沒寫完整,現場憋出來了。

這個代碼應該沒錯。面試官看了二十分鐘才說ok。 然後我們就這樣沈默了20分鐘,中間他就說了幾句話。

最後面試官說他們部門壹***兩輪面試。

咱們下期見!答案獲取方式:已贊 已評 已關~

原文出處:/discuss/90112?type=post&order=jing&pos=&page=2&ncTraceId=&channel=-1&source_id=search_post_nctrack&gio_id=FD441016D0B12571A898266FE8D1C8C6-1657195040955

  • 上一篇:Win32匯編 結構體數組的使用
  • 下一篇:幻影遊戲引擎的幻影遊戲引擎-簡單介紹
  • copyright 2024編程學習大全網