2018屆校招Andoid開發(fā)工程師總結(jié)--筆經(jīng)面經(jīng)

校招基本告一段落,今天就來把我記憶比較深刻的一些筆經(jīng)面經(jīng)分享出來。

筆經(jīng)

在校招中大廠基本都是要線上筆試的,其他一部分會(huì)在宣講會(huì)之后筆試。

對于宣講會(huì),從我個(gè)人的經(jīng)歷來看,如果一般只是宣傳公司的政策之類的東西的這種,有時(shí)間的話可以去看看,這個(gè)其實(shí)去的意義我個(gè)人覺得不太大,很多必要的東西是在網(wǎng)上可以查到的,再說了你也不會(huì)因?yàn)橐粓鲂v會(huì)就決定去不去投他們公司,校招無非就是廣撒網(wǎng),自己看得上的喜歡的都投就是了...

線上筆試

阿里、騰訊、京東、網(wǎng)易、小米等等大廠都是線上筆試,而且相比而言我列舉的這幾個(gè)的筆試時(shí)間比較早,差不多在8月底到9月中旬,想投大廠的肯定要早早準(zhǔn)備的;

線上筆試大部分的公司都會(huì)選擇兩個(gè)平臺(tái),一個(gè)是???,一個(gè)是賽碼,這兩個(gè)平臺(tái)也有很多大公司歷年的真題,所以刷題是必須的。

一般情況,線上筆試會(huì)有單選題、多選題、填空題、簡答題、算法題這些題型;我做的最多的是單選題、多選題、算法題這種組合的

選擇題

選擇題主要的考點(diǎn)是Java、Android、網(wǎng)絡(luò)基礎(chǔ)等、當(dāng)然還會(huì)有算法,我做過的一般都會(huì)有由二叉樹的前序、中序推后序,快速排序第一遍排完的結(jié)果等;另外部分大廠在選擇題還會(huì)有c++的題,這個(gè)我是真的就本科學(xué)了點(diǎn)兒皮毛,所以筆試的時(shí)候好多都是蒙的;

算法題

我認(rèn)為校招里算法比較重要的,大公司很看重,這個(gè)可以在??汀①惔a上不斷刷題刷經(jīng)驗(yàn)就好,個(gè)人的經(jīng)歷感覺如果能百分百AC的話,筆試一般都能通過
(也有例外的,得說一說這個(gè)有很多款app產(chǎn)品的奇葩公司,具體名字還是不透露了。首先給了一個(gè)從來沒聽說過的平臺(tái)做筆試,但是我點(diǎn)進(jìn)去做了一道題之后就進(jìn)不去了,然后官方發(fā)信息說網(wǎng)站被黑,會(huì)后續(xù)安排第二次筆試,到了通知筆試的那一天,一直沒有接收到筆試鏈接,直到晚上8點(diǎn)我在地鐵上,收到了一個(gè)郵件,結(jié)果就是這個(gè)公司的筆試鏈接,但是上面寫的是,筆試時(shí)間是晚上六點(diǎn)開始,到晚上10點(diǎn)結(jié)束....


問號(hào).jpg

我還是在9點(diǎn)鐘趕回去打開電腦做了一個(gè)小時(shí),不做不知道一做嚇一跳,選擇題和判斷題大概有30個(gè),這里面涉及到的知識(shí)點(diǎn)包括java、android、ios、js、h5、python、jquery、ajax、大數(shù)據(jù)等等,基本上現(xiàn)在流行的常用的技術(shù)語言都有涉及,我一度認(rèn)為自己打開的方式不太對,沒轍,90%是蒙的吧,然后還有兩道算法題,做了四十分鐘兩道題AC都只有0.1,無奈交卷,然而幾天后告訴我筆試通過了......好吧,什么都不說了)


03df948cc11f4340b28f00707df2744d.png

算法題的形式分兩大種情況:
一種是在在??汀①惔a這種平臺(tái)上,他們是允許使用本地IDE的,這樣平時(shí)要是依托于智能提示的也不會(huì)有什么問題;
另一種就是其他平臺(tái)的,比如我印象中騰訊的就是用的另外的一個(gè),它在算法題是不允許切屏,必須手動(dòng)一個(gè)一個(gè)敲代碼,所以平時(shí)練習(xí)的話最好還是多手動(dòng)一個(gè)個(gè)敲,畢竟面試的時(shí)候也會(huì)讓你現(xiàn)場手寫代碼,這個(gè)時(shí)候肯定是沒有智能提示的吧;

面經(jīng)

  • vivo

vivo這次校招給我的感受就是效率高,周六筆試的,周日給筆試結(jié)果,周二面試,周二晚上通知面試結(jié)果,前后不超過5天,還是很佩服的。
vivo的面試在北航旁邊的泰富酒店,一進(jìn)去就感受到了vivo真的有錢,選了一個(gè)這么豪華的酒店進(jìn)行面試;

一面
應(yīng)該是個(gè)技術(shù)leader,人很好
1、自我介紹
2、介紹一下自己印象最深的項(xiàng)目
3、如何自學(xué)Android
4、Android多線程操作
5、Activity的生命周期
6、Android多線程的處理
7、什么是多態(tài)、寫一個(gè)例子
8、寫一個(gè)二分查找
9、用具體項(xiàng)目說一說mvp的實(shí)現(xiàn)
10、為什么把自己定義為項(xiàng)目負(fù)責(zé)人
11、在團(tuán)隊(duì)中有什么覺得做得不足的地方
還有一些技術(shù)問題太久可能忘了,但是問的都屬于相對基礎(chǔ)的;

二面
hr面
1、自我介紹
2、談?wù)勛约捍髮W(xué)比較有挑戰(zhàn)性的事
3、對于工作地點(diǎn)有要求么
4、目前其他公司的面試情況
5、朋友怎么評價(jià)你的

  • 美團(tuán)

一面
主要java基礎(chǔ)和算法(當(dāng)時(shí)面的不好,好多問題記不清了)
1、寫一個(gè)單例模式
2、有哪些常用的排序算法、它們的時(shí)間復(fù)雜度與空間復(fù)雜度
3、項(xiàng)目中什么地方用過排序算法
4、寫一個(gè)選擇排序
5、寫一個(gè)單例模式
6、單例模式不同實(shí)現(xiàn)方式的優(yōu)缺點(diǎn)
7、java的四種引用類型
8、手寫算法實(shí)現(xiàn)字符串按空格翻轉(zhuǎn)
9、優(yōu)化讓上述算法的空間復(fù)雜度為O(1)
10、TCP/IP是什么
11、http協(xié)議,get和post的區(qū)別
12、ArrayList與LinkList的區(qū)別,底層實(shí)現(xiàn)方式

  • 小米

一面
1、類的三大特性
2、怎么讓一個(gè)函數(shù)返回兩個(gè)int值
3、重載和重寫的區(qū)別
4、說一說Handler
5、Service的啟動(dòng)方式
6、Activity的4種啟動(dòng)模式
7、用過什么設(shè)計(jì)模式
8、java的8種基本數(shù)據(jù)類型
9、抽象類與接口的區(qū)別
10、java的訪問修飾符及各自的限制
11、靜態(tài)嵌套類和內(nèi)部類
12、寫算法快速找完全二叉樹的最后一個(gè)結(jié)點(diǎn)

二面
1、聊了聊自己做的App,問了相應(yīng)的布局方式
2、Android自定義View的步驟
3、補(bǔ)間動(dòng)畫與屬性動(dòng)畫的區(qū)別
4、有沒有使用過ContentProvider
5、就自己寫的博客內(nèi)容提了些問題
6、Sychnorized鎖對象和鎖方法的區(qū)別
7、java異常的拋出相關(guān)問題
8、靜態(tài)嵌套類訪問權(quán)限
9、講一講內(nèi)存的棧、堆、方法區(qū)
10、 Callable和Runnable的不同,有沒有用過Future
11、寫一個(gè)有關(guān)線程間通信的代碼(具體記不太清)
12、Android事件傳遞機(jī)制

  • 今日頭條

一面
1、自我介紹
2、equals()和hashcode()
3、寫一個(gè)快速排序
4、寫一個(gè)單例模式,多種實(shí)現(xiàn)方式
5、Listview的優(yōu)化方式
6、對注解了解多少
7、重載和重寫的區(qū)別
8、有沒有看過Retrofit這些的源碼
9、Android事件傳遞機(jī)制
10、自定義listview中側(cè)滑菜單的過程
11、StringBuffter和StringBuilder的使用
12、java四種引用類型及其特點(diǎn),使用場景

二面(這個(gè)印象特別深,人很好,技術(shù)也很厲害,不會(huì)的都給講的很明白)
1、LinkList的底層實(shí)現(xiàn)細(xì)節(jié)
2、一個(gè)Activity啟動(dòng)另外一個(gè)Activity的過程
3、如何在啟動(dòng)一個(gè)activity之后,前一個(gè)activity不調(diào)用onStop()方法
4、用棧實(shí)現(xiàn)一個(gè)隊(duì)列并優(yōu)化
5、給定結(jié)點(diǎn)數(shù),計(jì)算一個(gè)完全二叉樹的深度,詳細(xì)計(jì)算過程
6、單例模式,要求線程安全的,不斷按要求優(yōu)化
(這一輪基本上是屬于寫代碼和算法優(yōu)化,有一部分忘了...)

  • 貓眼

1、自我介紹
2、做過的項(xiàng)目介紹
3、目前的面試及offer情況
4、Activity四種啟動(dòng)模式
5、Activity的生命周期
6、View事件分發(fā)機(jī)制
7、講一講volatile關(guān)鍵字
8、列舉寫代碼過程中遇到過的RunTime Exception
9、Try catch finally相應(yīng)問題,try中有return的情況等
10、說一說final關(guān)鍵字
11、Sychnorized鎖方法與鎖對象的不同
12、LinkList的底層實(shí)現(xiàn)
13、Fragment生命周期
14、寫代碼,字符串反轉(zhuǎn)
15、寫代碼,字符串比較(具體的有點(diǎn)兒模糊,記得答案是需要先按Asc碼排序)

總結(jié)

現(xiàn)在確實(shí)很后悔當(dāng)時(shí)面試完沒有做系統(tǒng)地總結(jié),現(xiàn)在好多都忘了,基本上每一輪面試都是一個(gè)小時(shí)左右,所以問的問題還是比較多的,大廠一般會(huì)問的比較深,注重源碼和算法、面試多了就會(huì)發(fā)現(xiàn)這些公司問的問題好多都差不多,有些是必問的,所以總結(jié)面試、刷題真的很有必要的...

另外還是附上一些我認(rèn)為比較好的android面試復(fù)習(xí)資料
Android面試題收集
Android面試知識(shí)庫
Android面試之開篇
Android面試總結(jié)
Android面試一天一題-goeasyway

806實(shí)驗(yàn)室
2017.12.12

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容