2016年未,騰訊,百度,華為,搜狗和滴滴面試題彙總

yangxi_001發表於2016-12-12

前言:前一段時間和大家交流,據反饋現在Android崗位也沒有以前那麼多了,當然這不意味著飽和,只是市場更趨於合理一些,就像深圳房價一樣,以前破天慌的漲,新政出來後,房價慢慢趨向合理一樣。Android還有有很多機會的。最近結合一些面試的同學(包含社招和校招),整理了下一些面試題目。實際上,很多面試題網上都能找得到。很多人說,完全可以背答案,我不這麼看。背的和實際開發遇到的,說出來是不一樣的。舉例,你是怎麼使用多執行緒的?這個問題。背的答案,往往向裡面一細問,可能就不知道了。話不多說,我整理面試題如下,供大家參考,知道比沒知道的好。可以幫大家查漏不缺。以下是(騰訊,百度,華為,搜狗和滴滴 這些廠的面試題


Android基礎

  1. View的繪製流程;自定義View如何考慮機型適配;自定義View的事件分發機制;View和ViewGroup分別有哪些事件分發相關的回撥方法;自定義View如何提供獲取View屬性的介面;

  2. Art和Dalvik對比;虛擬機器原理,如何自己設計一個虛擬機器(記憶體管理,類載入,雙親委派);JVM記憶體模型及類載入機制;記憶體物件的迴圈引用及避免

  3. 記憶體回收機制與GC演算法(各種演算法的優缺點以及應用場景);GC原理時機以及GC物件;記憶體洩露場景及解決方法;OOM的避免及解決方法

  4. 四大元件及生命週期;ContentProvider的許可權管理(讀寫分離,許可權控制-精確到表級,URL控制);Activity的四種啟動模式對比;Activity狀態儲存於恢復

  5. Fragment生命週期;Fragment狀態儲存

  6. startActivityForResult是哪個類的方法,在什麼情況下使用,如果在Adapter中使用應該如何解耦

  7. AsyncTask原理及不足;IntentService原理

  8. AstncTask+HttpClient與AsyncHttpClient有什麼區別

  9. 如何保證一個後臺服務不被殺死;比較省電的方式是什麼

  10. 如何通過廣播攔截和abort一條簡訊;廣播是否可以請求網路;廣播引起anr的時間限制

  11. 程式間通訊,AIDL

  12. Handler機制及底層實現

  13. Binder機制及底層實現

  14. ApplicationContext和ActivityContext的區別

  15. 一張Bitmap所佔記憶體以及記憶體佔用的計算

  16. 對於應用更新這塊是如何做的?(灰度,強制更新,分割槽域更新)

  17. 混合開發,RN,weex,H5,小程式(做Android的瞭解一些前端js等還是很有好處的)

  18. 說一款你認為當前比較火的應用並設計(直播APP)

Java基礎

  1. 集合類以及集合框架;HashMap與HashTable實現原理,執行緒安全性,hash衝突及處理演算法;ConcurrentHashMap

  2. 程式和執行緒的區別;多執行緒與執行緒池

  3. 資料一致性如何保證;Synchronized關鍵字,類鎖,方法鎖,重入鎖

  4. 同步的方法;多程式開發以及多程式應用場景

  5. 伺服器只提供資料接收介面,在多執行緒或多程式條件下,如何保證資料的有序到達

  6. ThreadLocal原理,實現及如何保證Local屬性

  7. String StringBuilder StringBuffer對比

  8. 介面與回撥;回撥的原理;寫一個回撥demo;

  9. 泛型原理,舉例說明;解析與分派

  10. 抽象類與介面的區別;應用場景;抽象類是否可以沒有方法和屬性

  11. 靜態屬性和靜態方法是否可以被繼承?是否可以被重寫?原因

  12. 修改物件A的equals方法的簽名,那麼使用HashMap存放這個物件例項的時候,會呼叫哪個equals方法

資料結構與演算法

  1. 堆和棧在記憶體中的區別是什麼(資料結構方面以及實際實現方面)

  2. 最快的排序演算法是哪個?給阿里2萬多名員工按年齡排序應該選擇哪個演算法?堆和樹的區別;寫出快排程式碼;連結串列逆序程式碼

  3. 求1000以內的水仙花數以及40億以內的水仙花數

  4. 子串包含問題(KMP 演算法)寫程式碼實現

  5. 萬億級別的兩個URL檔案A和B,如何求出A和B的差集C,(Bit對映->hash分組->多檔案讀寫效率->磁碟定址以及應用層面對定址的優化)

  6. 蟻群演算法與蒙特卡洛演算法

  7. 寫出你所知道的排序演算法及時空複雜度,穩定性

  8. 百度POI中如何試下查詢最近的商家功能(座標映象+R樹)

其他

  1. 死鎖的四個必要條件

  2. 常見編碼方式;utf-8編碼中的中文佔幾個位元組;int型幾個位元組

  3. 實現一個Json解析器(可以通過正則提高速度)

  4. MVC MVP MVVM; 常見的設計模式;寫出觀察者模式的程式碼

  5. TCP的3次握手和四次揮手;TCP與UDP的區別

  6. HTTP協議;HTTP1.0與2.0的區別;HTTP報文結構

  7. HTTP與HTTPS的區別以及如何實現安全性

非技術問題彙總

  1. 研究比較深入的領域有哪些

  2. 對業內資訊的關注渠道有哪些

  3. 最近都讀哪些書

  4. 自己最擅長的技術點,最感興趣的技術領域和技術點

  5. 專案中用了哪些開源庫,如何避免因為引入開源庫而導致的安全性和穩定性問題

  6. 實習過程中做了什麼,有什麼產出

  7. 5枚硬幣,2正3反如何劃分為兩堆然後通過翻轉讓兩堆中正面向上的硬幣和反面向上的硬幣個數相同

  8. 時針走一圈,時針分針重合幾次

  9. N * N的方格紙,裡面有多少個正方形

  10. 現在下載速度很慢,試從網路協議的角度分析原因,並優化(網路的5層都可以涉及)

HR問題彙總

  1. 講一件你印象最深的一件事情

  2. 介紹一個你影響最深的專案

  3. 介紹你最熱愛最擅長的專業領域

  4. 公司實習最大的收穫是什麼

  5. 自己的優點和缺點是什麼?舉例說明

  6. 你的學習方法是什麼樣的?實習過程中如何學習?實習專案中遇到的最大困難是什麼以及如何解決的

  7. 說一件最能證明你能力的事情

  8. 專案中遇到最大的困難是什麼?如何解決的

  9. 你的職業規劃以及個人目標;未來發展路線及求職定位

  10. 評價下自己,評價下自己的技術水平,個人程式碼量如何

  11. 通過哪些渠道瞭解的招聘資訊,其他同學都投了哪些公司

  12. 業餘都有哪些愛好

  13. 當前的offer狀況;如果BATH都給了offer該如何選

  14. 你對一份工作更看重哪些方面?平臺,技術,氛圍,城市,money

  15. 理想薪資範圍;杭州崗和北京崗選哪個

  16. 理想中的工作環境是什麼

  17. 實習過程中周圍同事/同學有哪些值得學習的地方

  18. 家人對你的工作期望及自己的工作期望

  19. 若上司在公開會議上誤會你了,該如何解決

  20. 是否可以實習,可以實習多久

  21. 你看中公司的什麼?或者公司的那些方面最吸引你?

相關文章