前言
本編內容分享一下大佬的經歷,從三個月之前的2.5實習,到10K+位元組的,在這三個月是怎么學習!老樣子先分享位元組面經,結尾有驚喜!

位元組跳動一面
- 什么是jvm嗎
- 什么是翻譯和編譯
- jvm的記憶體結構
- 作業系統的快取對應jvm的記憶體結構的哪一塊
- 說說jvm垃圾回收的演算法
- jvm是怎么回收垃圾的
- 你怎么知道一個物件是不是可回收(可達性分析)
- 間接物件是不是可回收物件呢
- https的程序,怎么保證安全
- 為什么ssl層要采用對稱密鑰通信
- 對稱密鑰和非對稱密鑰的區別
- tcp/ip的每一層代表的是什么
- ARP的程序
- ip地址是虛擬ip吧,為什么客戶端和服務端能通通信
- 傳輸層的最重要的協議
- tcp和udp的區別
- tcp服務端如果記憶體滿了,客戶端怎么處理
- hashmap的原理
- 你了解hashtable嗎,如果給你優化,你怎么優化
- 什么是執行緒安全
- 你了解鎖嗎,synchronized是怎么保證執行緒安全的
- volatile為什么能夠保證可見性
- 如何洗掉排序鏈表的節點,例如(1->1->1->2->3),結果是(2->3)
位元組跳動二面
- 聊聊專案,你這個專案怎么優化的,說說程序
- 給你一棵樹,求兩個節點之間的最長距離
- 說一下怎么設計LRU快取,偽代碼,哪個hashmap,可以做LRU快取
- 行程通信的方式,你試試實作其中的一種,偽代碼
- ClassNotFoundException和NoClassDefFoundError的區別
- arrayblockingqueue的原理,使用場景
- 談談你對實驗室專案的認識,難點,識訓
位元組跳動三面
- 為什么IPV4都已經用完了,但是我們的ip還是夠用
- 給你一個n,如何得到61n,不能用(+*/)
- 在一個桶中,有1024個數字,每個數字為[1-1024]的其中一個,假如在桶中+x,如何求這個x是多少
- 一個整形n,其中n為最大值,n+1會是個什么結果,為什么會這樣?(我是按原碼、反碼、補碼來回答,但是面試官還是不滿意,結論對的,但是原理還不是這樣,可能問底層吧)
- 7給你一個字串"abcd123",右移3位得到"123abcd",給你(char [] chars,int n),求如何能夠不用空間的情況下O(1),能夠移位得到這個結果
- 場景題
涉及一個類,例如榨汁機,給你一個"榨汁"的方法,那你怎么設計這個方法(我回答首先要放原料,所以方法要改一下,為zhazhi(Cailiao cailiao),然后材料包含蔬菜和水果,然后面試官說有可能蔬菜和水果,都不可以榨汁啊,像土豆,所以繼承不是個好想法,我就說有這么個要要求的話,那我用介面啊,標識這個東西就是可以榨汁,然后實作了這個介面的才能呼叫榨汁機這個方法)
25批馬,沒有計時器,5個賽道,求最快的3批,最少次數
給你一個時鐘,0:00-23:59,時針和分針重疊了多少次
總結
從2.5K實習到現在的位元組,這就是成長吧,大佬也跟我說:“曾經也無數次擔心基礎不好和短時間沒準備而找不到好作業,但既然選擇了這行,就只能咬牙堅持了,努力交給自己,剩下的交給時間",
最后把大佬的面試資料和學習筆記免費分享給大家,希望對大家有幫助
資料免費領:戳這里免費領取,暗號:CSDN



愛編程,愛分享,聽說點贊+關注的都進大廠了哦!!!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/177345.html
標籤:其他
