又到搶收好offer的季節,最近今日頭條寒冬下逆勢熱招,放出大量offer,base北京、成都都有,聽說福利還很不錯,base成都有租房補貼、免費三餐、帶薪年假等。mysql
在一家高速發展的互聯網公司工做,除了工做穩定、薪水可觀、福利豐厚,更難能難得的是,可能獲得更多的工做挑戰與晉級機會。面試
對於想要進入一線互聯網工做的Java工程師們來講,若是面試前沒有準備充分,浪費機會就太遺憾了。redis
分享近期參加頭條抖音面試的童鞋真題及面經、BAT等一線大廠必考題及答案,助力你們金三銀四拿好offer。sql
一面(1小時)編程
hashmap,怎麼擴容,怎麼處理數據衝突?怎麼高效率的實現數據遷移?後端
Linux的共享內存如何實現,大概說了一下。設計模式
socket網絡編程,說一下TCP的三次握手和四次揮手網絡
同步IO和異步IO的區別?數據結構
Java GC機制?GC Roots有哪些?併發
紅黑樹講一下,五個特性,插入刪除操做,時間複雜度?
快排的時間複雜度,最壞狀況呢,最好狀況呢,堆排序的時間複雜度呢,建堆的複雜度是多少
二面(1小時)
自我介紹,主要講講作了什麼和擅長什麼
設計模式瞭解哪些?
AtomicInteger怎麼實現原子修改的?
ConcurrentHashMap 在Java7和Java8中的區別?爲何Java8併發效率更好?什麼狀況下用HashMap,什麼狀況用ConcurrentHashMap?
redis數據結構?
redis數據淘汰機制?
三面(約五十分鐘)
mysql實現事務的原理(MVCC)
MySQL數據主從同步是如何實現的?
MySQL索引的實現,innodb的索引,b+樹索引是怎麼實現的,爲何用b+樹作索引節點,一個節點存了多少數據,怎麼規定大小,與磁盤頁對應。
若是Redis有1億個key,使用keys命令是否會影響線上服務?
Redis的持久化方式,aod和rdb,具體怎麼實現,追加日誌和備份文件,底層實現原理的話知道麼?
遇到最大困難是什麼?怎麼克服?
將來的規劃是什麼?
你想問我什麼?
以上就頭條抖音後端研發面試題,除此以外,我還整理收集了BAT等一線大廠Java面試真題,你們若是感興趣,點贊+關注+私信回覆【bat】,便可領取。