2020今日頭條面試真題及答案整理&最新最全&持續更新中~~~~

大家好,我是好好學習天天編程的天天
一個整天在互聯網上爬蟲的程序員,每天給大家分享學習乾貨的攻城獅

如果你關注騰訊面試題,請參考:
騰訊C++面試題【合集】來啦~持續更新中


下面是今日頭條(字節跳動)2020年面試真題整理,持續更新,敬請關注!

一面-2020/03/29 -牛客網

  1. 進程和線程、上下文切換了什麼、共享了什麼
  2. 線程獨佔什麼、切換時候內核做了什麼
  3. 七層模型、協議有哪些、arp、rarp
  4. 爲什麼要有ip和mac、mac地址是如何來的
  5. C++多態、繼承、重載
  6. Map的種類
  7. 數據庫語句!!!count(*)、count(1)、count(字段)
  8. group by、order by、distinct
  9. 一條sql語句,數據庫做了什麼?
  10. 缺頁了怎麼辦,物理內存如何分配的
  11. 虛擬內存和物理內存,爲什麼
  12. B+樹和紅黑樹
  13. 紅黑樹和一般的平衡二叉樹,增、刪、改、查的過程和效率、時間複雜度
  14. 有序數組,找出和爲k的數對

如果你有不會的面試題,這裏會有面試題講解的視頻
乾貨 | 名企高頻考點-C++ vector基本使用

每天的視頻我都會彙總到一起:
IT筆試面試真題講解合集

二面-2020/03/29-牛客網

  1. 數據庫組合索引,最左前綴,爲什麼
  2. 數據庫事務特性
  3. 隔離機制有哪些,分別避免了什麼
  4. http1.x的新特性
  5. 長連接和短連接,什麼時候會出現
  6. 長連接是如何維持的,心跳機制,如果一直想要連接着怎麼辦
  7. 輸入一個url發生了什麼
  8. 二叉樹各層節點數,遞歸、非遞歸,時間、空間複雜度
  9. 靜態多態和動態多態
  10. 重載和覆蓋
  11. 聚簇索引和非聚簇索引,實現區別,索引存在哪裏了
  12. 主鍵索引存放
  13. 死鎖是什麼,死鎖發生了怎麼辦
  14. 什麼叫字節流,什麼叫數據報

一面-2020/03/29-牛客網

  1. 進程和線程、上下文切換了什麼、共享了什麼
  2. ​ 線程獨佔什麼、切換時候內核做了什麼
  3. 七層模型、協議有哪些、arp、rarp
  4. 爲什麼要有ip和mac、mac地址是如何來的
  5. C++多態、繼承、重載
  6. Map的種類
  7. 數據庫語句!!!count(*)、count(1)、count(字段)
  8. group by、order by、distinct
  9. 一條sql語句,數據庫做了什麼?
  10. 缺頁了怎麼辦,物理內存如何分配的
  11. 虛擬內存和物理內存,爲什麼
  12. B+樹和紅黑樹
  13. 紅黑樹和一般的平衡二叉樹,增、刪、改、查的過程和效率、時間複雜度
  14. 有序數組,找出和爲k的數對

二面-2020/03/29-牛客網

1.數據庫組合索引,最左前綴,爲什麼

2.數據庫事務特性

3.隔離機制有哪些,分別避免了什麼

4.http1.x的新特性

5.長連接和短連接,什麼時候會出現

6.長連接是如何維持的,心跳機制,如果一直想要連接着怎麼辦

7.輸入一個url發生了什麼

8.二叉樹各層節點數,遞歸、非遞歸,時間、空間複雜度

9.靜態多態和動態多態

10.重載和覆蓋

11.聚簇索引和非聚簇索引,實現區別,索引存在哪裏了

12.主鍵索引存放

13.死鎖是什麼,死鎖發生了怎麼辦

14.什麼叫字節流,什麼叫數據報

一面-2020/03/09-牛客網

  1. unordered_map和map區別

  2. STL,vector,list

  3. C++多態,虛函數機制

  4. 進程通信

  5. 進程線程差異

  6. TCP三次握手四次揮手細節

  7. 算法題:最長不重複字串(HashTable,O(N))

  8. 面試官人非常好,有一些遺漏的知識點會給你指出來並且講解,也很耐心。

二面-2020/03/15-牛客網

  1. C++多態(看程序說結果,比較複雜,考了有關虛函數表,還考察了override和overwrite,虛函數內部調用非虛函數是調用指針類還是對象類)

  2. 二叉搜索樹

  3. B樹b+樹

  4. 紅黑樹刪除算法

  5. 用互斥鎖實現讀寫鎖,寫者優先

  6. 算法題:有100個方格,每個上面有毒蘑菇和體力蘑菇,毒蘑菇減體力體力蘑菇加體力,當前體力是能跳到的最遠距離,求是否能跳到最遠方格,如果可以,求落在第100格上的最大剩餘體力

三面-2020/03/17-牛客網

  1. 服務方法調用

  2. RMI/RPC

  3. 序列化/反序列化

  4. 10億找Top10000,需要考慮分片,如果用最小堆需要考慮高效合併

  5. 要考慮等待時間且帶有優先權的打印機,設計數據結構使打印任務高效

  6. 二十四點牌

  7. 在三面開始的時候面試官問了能夠實習的時間和想要實習的地點,猜測可能是leader直接面試(最後也正好去了這個面試官在的城市),人很和善,不過問題都不是我準備過的基礎題型,碰到的時候還是有一點束手無策。

  8. 其實準備字節跳動的面試還是需要着重準備基礎部分(數據結構、算法、操作系統、計算機網絡),另外對做算法題的要求很高,如果在看到題目的時候能直接給出這個題目的最優時空複雜度解法,面試官對你的評價會很高。如果基礎知識比較紮實了,可以看看網絡上的面試經驗,找找自己不會的知識點,查漏補缺。

一面-2020/03/24-牛客網

  1. 首先自我介紹
  2. 開篇直接做題,時間戳轉換成日月日時分秒~繼續討論其餘的情況。。(此時面試官突然說,算了,不問了吧,再問下去感覺你都快崩潰了)
  3. 討論實驗室項目

二面-2020/03/24-牛客網

  1. 自我介紹
  2. 問了一些個人情況,如爲啥選後臺,什麼時候能實習,一週能工作幾天,base選的哪
  3. 因爲做過一些後臺項目使用java語言開發的所以就問的我java,,,抽象類與接口的區別
  4. 一些c++的基礎問題,講一下const,指針與引用,new與malloc,內聯函數,如何防止內存泄露等問題
  5. 一些操作系統的問題,講一下進程、線程、協程,鎖機制,信號量,開鎖時如何通知其他線程等問題
  6. 編程題,判斷一棵樹是否爲二叉搜索樹,首先用遞歸判斷實現的,後來有問不遞歸怎麼實現(判斷每一個點的中序後繼節點是否大於該點),如何空間複雜度O(1),講了一下morris遍歷的原理

三面-2020/03/24-牛客網

  1. 自我介紹
  2. 什麼時候能來實習,下半年能不能也來,base是哪(感覺是照例問的都是)
  3. 簡單的介紹了一下項目,使用的技術框架,自己的職責
  4. spring的iop,aop(樓主是cpp選手,有java的項目,但對原理這一塊不太瞭解,所以就簡單的說一下自己的理解,面試官也沒有繼續深問)
  5. http請求的全過程,順帶着問了http報文格式
  6. cpp中的struct內存大小問題,注意空struct的sizeof爲1,和字節對齊
  7. 權力反轉,問了一下部門的工作內容,實習轉正率

一面-2020/02/06-牛客網

  1. 自我介紹和項目延伸

  2. 講了寄存器/cache優化的項目(我的項目經歷來自學校課程實驗,太簡單不提了,但是再簡單的項目也可以“加加戲”包裝一下,提前準備一些可拓展說的知識點)

  3. 順着項目問:如果要做一個棧,用數組的結構還是鏈表?(提示)數組和鏈表哪一個遍歷的效率高?(解答:數組。考慮cache緩存,所以是一組一組讀進去的,而鏈表肯定是一個一個讀的)

  4. cache和內存關係?

  5. 循環展開知道嗎?

  6. weak_ptr瞭解嗎(我講了解決shared_ptr的循環引用問題,面試官就沒再問了,應該算押到考點...

  7. move語義?(講了移動構造函數的原理)
    volatile?
    template瞭解嗎

  8. 元編程(meta programming) 瞭解嗎

  9. 原子操作?

  10. 回答了大概概念(要麼執行完,要麼什麼都不做),接着問 ”它可以用來解決什麼問題?“

  11. TCP和UDP區別,UDP使用場景

  12. 算法:

    [1 2 3 4 5 6] 排列成[1 3 5 2 4 6] (奇數排右邊,偶數排左邊,不考慮順序)(劍指offer原題)我先用了冒泡,然後面試官問了時間複雜度(O(n2)),想了一會後改成O(n)

  13. 股票問題 ([1 3 5 7 2 3 ]是每日股票價格,買一次賣一次,問如何使得收益最大,即求最大差)

二面-2020/02/28-牛客網

  1. 自我介紹
  2. 算法:多個有序數組排序 vector<int> fun( vector<vector<int> > )

  3. 先用了priority_queue + int [], 面試官同意想法後開始寫,但是後來發現複雜度太高,改成map+int[]。

三面-2020/02/28-牛客網

  1. 自我介紹
  2. 實現一下 memcpy() [要點:地址重疊]

  3. 對void*你瞭解什麼?
  4. int a[10000000]會有什麼問題?
  5. 如果想讓一個函數在main函數之前執行,該怎麼做?

一面 -2020/03/28-牛客網

  1. protobuf向後兼容怎麼做的。
  2. C++裏面虛函數怎麼實現的。
  3. 智能指針。
  4. C++單例模式實現
  5. 別的不記得了,但算法題還是記得的,刪除倒數第k個節點並返回頭指針,leetcode接雨水。

二面 -2020/03/28-牛客網

  1. 這個上來就是做題,做的是頭條去年的筆試題好像,搜字節跳動筆試,撲克移動就能搜到了。
  2. 然後是100只老虎,一隻羊,羊最後會不會被吃的問題,只答對了關鍵的一小部分。
  3. 內核創建進程時會自動打開哪幾個文件。

一面-2020/03/25-牛客網

  1. 上來都沒有自我介紹,直接寫代碼
  2. 實現一個類,該類在一個局部作用域中修改外層作用域的值,當局域作用域結束的時候,恢復外層作用域原來的值(析構函數和泛型編程)
  3. 給你n,k求一個數x使得x的n次方等於k,x保留五位有效數字(二分)
  4. 多個區間,問區間的最大重疊數量
  5. 一個整數數組,求區間min乘以區間sum的最大值(前綴和+單調棧)
  6. 對C++的泛型瞭解嗎,底層如何實現?
  7. 進程間通信的最快方式?
  8. 使用共享內存通信有什麼缺點?
  9. 有什麼想問我的?

二面-2020/03/25-牛客網

  1. socket編程服務端和客戶端調用函數的流程
  2. accepted函數的參數和返回值分別是什麼
  3. C++的打開文件函數freopen和系統調用的open函數關係和區別
  4. TCP的擁塞控制
  5. 網絡中的丟包原因
  6. 現場寫了一個多態,問各種情況的運行情況,內存對象模型,問的比較底層
  7. 一個整數數組,兩個人一次分別從左邊或者右邊拿走一個數,兩個人足夠聰明,求第一個人拿到數的最大和

一面-2020/03/23-牛客網

  1. leetcode 152
  2. leetcode 853

二面-2020/03/23-牛客網

  1. 先二分出k的位子,然後這個位子開始二分左邊有x個,那麼右邊就有k-x個,根據這個情形是否是我們需要的答案就可以判斷了。
  2. 棧+dfs+時間戳標記
  3. 裸的ac自動機

如果有不會的面試題,請參考:
乾貨 | 名企高頻考點-C++ vector基本使用
每天的視頻我都會彙總到一起:
IT筆試面試真題講解合集

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