參加阿里、騰訊、頭條等30場現場面試,總結出80道C++面試題目!

參加阿里、騰訊、頭條等30場現場面試,總結出80道C++面試題目!

阿里現場面試(一):

  1. B樹、存儲模型(B樹、B+樹與數據庫引擎這塊是熱門問題
  2. 字典樹構造及其優化與應用
  3. 持久化數據結構,序列化與反序列化時機
  4. 大規模文本文件,全是單詞,求前10詞頻的單詞(Top k問題是熱門問題
  5. 堆排序與其在求10詞頻問題中的應用
  6. 字典樹與其在統計詞頻上的應用
  7. 紅黑樹的特性與其在C++ STL中的應用
  8. 紅黑樹的調整
  9. 貪心算法與其弊端
  10. 能取得全局最優解的算法
  11. 動態規劃的原理與本質(動態規劃dynamic programming是筆試熱門題型
  12. 01揹包問題的詳細解釋
  13. 數據庫中join的類型與區別
  14. 數據庫的ACID
  15. 實現bitmap數據結構,包括數據的存儲與插入方式
  16. 實現unordered_map,鍵為string,value不限
  17. 實現unordered_map過程中的衝突解決辦法
  18. 一串int型整數存放磁盤上的壓縮存儲方式,包括寫入與讀取及內存無法一次性讀取時的解決辦法
  19. 對Java的瞭解
  20. Bloom過濾器處理大規模問題時的持久化,包括內存大小受限、磁盤換入換出問題(Bloom過濾器是熱門問題
  21. 線程池的瞭解、優點、調度處理方式和保護任務隊列的方式
  22. 對象複用的瞭解
  23. 零拷貝的瞭解
  24. Linux的I/O模型(I/O模型是熱門問題
  25. 異步I/O的詳細解釋

阿里現場面試(二):

  1. 線程池對線程的管理方式,包括初始化線程的方法、線程創建後的管理、指派任務的方式
  2. 同步I/O與異步I/O的區別,包括如何定義異步I/O、I/O實質上交給誰完成、如果實現異步
  3. Direct I/O 和其與異步I/O的區別
  4. Linux內核如何調用Direct I/O
  5. Bloom過濾器的優點與原理
  6. 字符串hash成狀態位的具體實現方式
  7. hash函數如何保證衝突最小
  8. 文件讀寫使用的系統調用
  9. 文件讀寫中涉及的磁盤緩衝區與其手動flush問題
  10. 數據庫join的具體含義

騰訊電話面試(一):

  1. C和C++的特點與區別
  2. C++的多態
  3. 虛函數的實現
  4. C++內存分配
  5. 幾大存儲區
  6. Python的特點
  7. Python有哪些實現(此處是指CPython、Jython等
  8. CPython的解釋執行過程
  9. Python裡面垃圾回收是怎樣的
  10. Python多線程介紹
  11. 多線程可以使用多核嗎
  12. 協程的瞭解
  13. cgi的瞭解
  14. http協議get和post的區別
  15. 進程間通信方式
  16. 建立TCP服務器的各個系統調用
  17. 處理多個套接字的I/O複用介紹
  18. epoll為什麼更快
  19. 虛擬內存的概念與介紹
  20. 單鏈表的倒置
  21. 快速排序的優化
  22. 字符串匹配算法
  23. TCP的三次握手與四次揮手的詳細介紹
  24. TCP的超時等待的介紹
  25. 流量控制的介紹
  26. 數字證書的瞭解
  27. http和https的區別
  28. 對數據庫包括其引擎的區別與瞭解
  29. 數據庫索引的作用(數據庫索引是熱門問題

今日頭條

現場一面 & 現場二面

  1. 算法題1:無序數組查找第Top k元素。手寫代碼實現
  2. 算法題2:並查集。手寫代碼實現
  3. Python中range與xrange的區別
  4. 算法題3:鏈表反轉。手寫代碼實現
  5. git merge與rebase的區別

現場一面

  1. 算法題1:枚舉給定數組中的所有非遞減子序列。敲代碼運行
  2. 算法題2:枚舉給定數組的全排列。敲代碼運行
  3. 介紹I/O複用技術,epoll優於select的原因
  4. 介紹線程池
  5. 圖的鄰接矩陣和鄰接表的表示,鄰接表的數據結構。敲代碼不運行

現場二面

  1. 算法題1:給定二叉樹,假設相連接的兩結點間距離為1,求所有結點中距離其他所有結點距離和最小的結點。敲代碼運行
  2. 介紹C ++內存管理(C ++的內存模型是熱門問題)
  3. 對文件系統的瞭解

現場三面

  1. 算法題1:給定數組,快速求出所有數右邊第一個比其大的數。回答思路
  2. 算法題2:給定k個數組,每個數組都是有序的,且每個數組最大值-最小值<1000,1
  3. 進程與線程區別
  4. STL內存分配
參加阿里、騰訊、頭條等30場現場面試,總結出80道C++面試題目!


分享到:


相關文章: