煙臺達內IT培訓
美國上市IT培訓機構

17343065216

熱門課程

百度騰訊Android筆試題

  • 時間:2015-12-22
  • 發布:達內煙臺中心
  • 來源:企業面試題

騰訊Android筆試題

1.int a = 1;

int result = a+++3<<2;

2.int a = 2;

int result = (a++ > 2)?(++a):(a+=3);

3.int a = 1234567;

int b = 0x06;

int result = a&b;

4.Integer a = 34556;

Integer b = 34556;

boolean result = a==b;

5.String func(string s ){

return s.length() > 0 ? func(s.subString(1))+ s.charAt(0):"";

}

String result = func("Tencent");

6.byte result = (byte) oxffeffefe;

7.int result = [(oxfe2baf&oxf)|oxff] >> 2/(4<<1);

8.判斷兩個String的交集

比如 A = "Marginle",B = Valaienie", 交集為aie,寫個算法。

9.什么是狀態機?項目中什么時候用到狀態機,舉例說明。

10.寫出兩種單例模式

Android基礎

1.Activity和BroadCast Receiver的生命周期

2.寫出幾種service和Activity的交互方式

3.UI線程和非UI線程的交互方式,寫出幾種各自的耗時。

4.requestLayout, invalidate和postInvalidate的異同

5.寫出三種常用layout布局并進行解釋

6.http怎么加入超時和代理

7.view的繪制過程,講講draw/onDraw和drawChild這個可以口述。

8.以下是Android sdk的英文文檔請細讀。

9.100盞燈,全部關閉,第一人全部打開(亮),第二個人隔一個按開關,第三個人隔2個按開關,以此類推,第100人路過時有幾盞燈亮著?(寫出結果就行)

Java基礎

1.說出sleet,wait,notify的區別

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

百度Android筆試題

2013-5-2號補充:

1.View和ViewGroup的關系

2.如何定位和解決Andorid的內存溢出問題

3.一個有N個元素的一維數組(A[0],A[1], ..., A[n-1]),設計一個算法求解該數組最大子數組。(要求時間復雜度是O(n))

4.用Java代碼實現判斷一個字符串中是否包含另一個字符串,不要用jdk中String的indexOf方法。

5.用Java實現一個Singleton.

6.簡述Observer設計模式,并畫出Observer模式的典型結構類圖

7.& 和&&的區別

8.什么是dpi,ps,sp?適配是如何做的,為什么?

9.用最有效率的方法算出2乘以8等于幾?

10.靜態成員類、非靜態成員類有什么區別?什么是匿名內部類?

11.Handler機制的原理,內部是如何實現的,消息隊列的實現機制?

12.什么是ANR,如何定位和避免?

13.APK之間互相傳遞數據

14.簡述Android的啟動過程

15.如何加載ndk庫?如何在jni中注冊native函數,有幾種注冊方法?

16.如何收集軟件崩潰信息?

17.簡述軟件編譯流程和發布流程

18.是否編譯過android源碼和linux內核源碼

19.寫一個歸并排序數組

20.自定義控件相關

21.緩存實現

22.線程同步(生產者 消費者)

23.符號匹配(棧)

24.還問了下拉刷新和分頁加載的實現機制

-------------------------------------------------------

盤古搜索面試總結

算法題

2.求一個數組的最大連續子序列和,比如:-10,3,5,2,-3,6,7

最笨的方法就是窮舉法,用三層for循環

3.求一個數組中出現次數最多且值最大的數

android的基礎題

1.service的生命周期

2.Intent用途,了解多少?IntentService知道么?

3.自定義控件

4.xmpp協議的理解

5.廣播創建方式有幾種?有什么區別?

6.多線程有幾種實現方式?

繼承Thread, 實現Runnable接口, AsynTask

------------------------------------------------------------

一、listview如何優化(這個很重要,多次被問到)

1.分頁加載

2.convertView緩存

3.viewHolder

4.scrollListener,記住滑動的狀態

二、常用排序算法,各種算法的復雜度,用Java實現一種排序算法。

四、單鏈表的反轉、合并、排序

五、二分查找法

六、Intent Flag常用的記住幾個

七、AIDL怎么用?全稱是什么?

八、taskAffinity 親和性

這個一般人應該都不熟悉,了解一下,面試中可能被問到,幾率不大。

--------------------------------------------------------------

百度各種面試總結

1.Listview item緩存如何實現

convertView

2.很多view如何緩存

3.圖片上傳

4.圖片過大如何處理?壓縮后圖片有多大?

分辨率壓縮、質量壓縮

5.OOM怎么辦?

6.圖片的緩存機制,如何做到高效和穩定?

7.自定義view怎么做能提高效率? 自定義view如何做圖片緩存?自定義view如何判斷單擊和雙擊?自定義view 的 onDraw方法主要做什么?

避免重復調用measure 和 layout

8.是否看過view的源碼

9.動畫的機制及其底層實現?

10.二叉樹、鏈表

11.平時看什么書?去哪些論壇看?

12.問項目底層實現

13.Linux文件系統實現,如何實現文件的隱藏?

---------------------------------------------------------------------------------------------------------

面試算法題總結

1.有一個整數數組,有負數和整數,用一個方法把正負數分開,要求空間復雜度是O(1),時間復雜度是:O(N)(百度移動平臺部)

2.有一個數列,奇數個,其中有3個是單個的, 其它都是成對的,怎么找出其中任意一個單個的數(小米一面)

3.在一個數組中,找出出現次數最多且數值最大的一個數并輸出

4.用最快的方式將兩個數組合并到一個數組中?時間復雜度

============================================================================================

2013-4-10補充:

問題:怎樣的類可以作為HashMap的鍵?

答:這個問題是搜狗2012年的筆試題,我開始還真是沒想太明白。剛才看到HashMap的時候才發現原來是這么回事。

當需要往ArrayList,HashMap中放東西時,像int,double這種內建類型是放不進去的,因為容器都是裝object的,這就需要這些內建類型的外覆類了。比如:int對應的Integer,double對應的Double。

同樣是搜狗的筆試題:適合頻繁插入和查找的數據結構

答:頻繁插入,鏈表效率高,頻繁查找數組效率高,那么綜合一下,我個人覺得是哈希表,或者說HashMap等使用hash算法的數據結構。

1、對于簡歷上所寫的每個問題,面試官感興趣的會對我提問,并分析里邊遇到的問題以及得到的經驗。面試過程描述以前做過的項目。項目中你認為的難點是什么。

2、對于網絡交互這塊兒需要注意什么問題

3、android是一個什么樣的系統。Jni調用機制是什么。用uml畫一個在你的項目中使用的設計模式。

面試中常問的非技術類問題:

1.簡單介紹一下你自己。

2.對自己做個評價,優點、缺點。

3.自己做過的項目,詳細介紹一下。

4.實習經歷,在實習過程中遇到哪些問題,如何解決的?

5.你對公司有什么問題要問嗎(對公司有什么要了解的)?

技術類的問題主要就看對技術的掌握程度和自己的綜合能力了。

百度移動終端研發工程師筆試題,題量不大,2個小時,有點難度。

1.寫一個字符串逆序的程序,時間復雜度和空間復雜度最低,效率越高越好。

2.實質:二叉樹的層序遍歷,每層的結點用單鏈表輸出。

3.1-N(N最大32000,且未知),內存只有4K,找出其中的重復數

4.編程題,比較復雜,是個系統設計題,與《編程之美》中3.2,電話號碼對應英語單詞類似。

百度軟件開發工程師一面問題:

1.有101個數,為[1,100]之間的數,其中一個數是重復的,如何尋找這個重復的數,其時間復雜度和空間復雜度是多少?

2.Java中抽象類與接口的區別。

3.進程與線程之間的聯系與區別。(多家公司都在問,好好研究一下)

4.談談對設計模式的認識與理解,簡單介紹一下你所知道的設計模式。(多家公司都問,Android方向面試必考的)

5.線程、多線程相關(必問)

6.Linux常用的命令,shell編程,grep命令的使用。

7.海量數據查找或者排序,有資源限制要求。(??嫉?

建議:簡歷中對自己的專業技能要實事求是的寫,突出自己的重點,不宜托大,面試官面試時提問的依據就是簡歷上的內容。百度的工作環境很好,做技術的員工給人的感覺就是雖然人家的技術水平很高,但是都比較謙遜。百度確實是一個不錯的互聯網公司。

上一篇:70道經典Android筆試題
下一篇:阿里巴巴Android筆試題

馬上預約七天免費體驗課

姓名:

電話:

選擇城市和中心
江西省

貴州省

廣西省

海南省

達內教育

有位老師想和您聊一聊

金瓜影视