2014金山網路實習生招聘——Android筆試題

來源:互聯網
上載者:User

標籤:android   style   使用   檔案   資料   2014   

一、請用虛擬碼描述,在Android系統上啟動和停止Service有哪些方法,並說明這些方法導致Service的生命週期有何不同?


二、輸入一個正整數 X,以2*X,4*X,8*X的方式遞增,當大於10000時,再倒敘輸出已經輸出的整數。【要求:不得使用迴圈和其他任何變數(包含局部變數)輔助】

比如 X= 2468,輸出結果為:

2468,4936,9872,19744,19744,9872,4936,2468


三、有兩個字串由不同的字母組成,一長一短,長的為A,短的為B。設計一個演算法,如果所有在B中出現的字元都在A中出現,則返回true,否則返回false。假設A的長度為m,B的長度為n,要求演算法時間複雜度不能大於O(m+n)。


四、實現如下工作者類IKWorker,調用者通過調用AddJob將Runnable類型的job提交給IKWorker,IKWorker負責非同步執行所有提交過來的job。【要求:盡量高效,不得使用系統的線程池】

 public interface IKWorker{

public boolean Start();

public void AddJob(Runnable job);

public boolean Stop();

}


五、在Android手機中實現一個App,用來做檔案下載,可在App介面新增,暫停和取消下載檔案及展示下載過程中的進度,同時要保證Activity退出時後台仍然能再下載。當介面啟動時還可以顯示正在下載的檔案及進度。【要求:寫出實現此App的設計思想,盡量易懂,簡潔】


六、系統/sdcard/目錄下有很多張圖片,現需要一activity通過縮圖的方式瀏覽所有圖片,在設計中體現對一下三點的處理:

A.不能分頁顯示,所有圖片顯示在一頁

B.要體現對ANR的處理

C.要體現對OOM的處理

請寫出此Activity的設計思路


七、在Android中兩個進程之間傳輸大資料,可以使用什麼方式實現?這些方式中哪種方式最高效?說明原因。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.