轉自:http://www.nowcoder.com/discuss/3906?pos=20&type=0&order=0
騰訊
一面
1.看着簡歷中的技能Java/c/Android掌握情況,先問Java我的掌握情況如何?
我說分爲基本類型,還有集合,面向對象,線程,虛擬機的簡單瞭解和GC。
2.那說說你理解的多線程?
我說多線程兩種方式,一個是繼承Thread類,再就是實現Runable接口。有線程休眠和等待阻塞的過程。其實我腦子模糊了!
3.那你舉例子你項目中如何使用多線程的?
我說Android中的UI線程和子線程交互分配工作,開啓一個線程先調用run方法。之後。。。我說的很差。
4.說簡歷中第二個項目簡單介紹下,然後問其中技術點的信息上傳你理解的http。
我說http中採用的是post方法,回答的很差。
5.簡歷中圖片和視頻壓縮用什麼方法?
我說圖片是bitmap,視頻的話目前好像很少要去壓縮,會引起機身卡頓,比較cpu和內存的原因。他說誰說的,你在哪裏看到的,然後就說那先不說這個問題。
6.說說Android中的Bitmap,你有沒有看過源碼,還是停留在使用?
我說目前這個是隻在使用,看了fragment的源碼。於是就說了fragment之間切換出現的問題,三種方法,提交的差異。
7.那麼你能說說android中listview是如何優化的?
我說使用convertview緩存,但是之後出現問題是item亂序的問題,他說那每次複用都會更新會什麼還會亂序,我模糊的說了一下。
8.那麼如果listview中的item上有個加號減號,點擊一次會執行什麼操作?
我說調用notifychangedata.他問每次都會調用嗎、。我說恩。?數據變化就會執行。
9.簡歷中說用Recycleview代替listview,項目中怎麼用的,簡歷寫得應該是你負責的部分?
我說了Recycleview的優點,停留在瞭解,不是很深入,沒有用在項目中。
10.簡歷中說數據格式從xml改爲json。爲什麼?
我說了解析xml比較麻煩,代碼複雜,json解析用的阿里的fastjson,他說速度快是怎麼體現的,我說不出來。
11.問在android佈局瞭解的怎麼樣?比如有很多複雜的界面你怎麼提升界面的優化?
我說的不對,他說你沒有看過界面層次圖嗎?沒有優化這方面嗎?
12.問我還有什麼想要補充而沒有說的?
我就說我回答的很差。可以對我的學習方面提一些建議嗎?他說你對細節的基礎要加強,線程鎖,網絡http都要弄明白。
13.問我平時怎麼學習的?
我說看書,看博客,遇到問題記錄寫博客,然後他翻了下我的博客說我還寫過二叉樹什麼什麼,我就說是的,是給先序和中序遍歷求後續遍歷,貌似着急的回答,擋住了他要問什麼,唉!
二面
1.自我介紹
我說了android開發經驗,對優化做出思考。
2.項目都做了哪些優化。
天哪,我只是回答了界面的優化。不知道爲什麼咋停下來了,其實我還有很多優化的方面。
3.數據格式從xml改爲json的原因。
回答的還是可以的。
4.post發送請求的幾個數據格式是什麼?
半天沒懂,最後說不知道。
5.Java中的集合類,說說linkedlist和ArrayList的區別和刪除元素的時間複雜度分別是多少?
說了兩者之間的同步關係!線程不安全確定的是ArrayList。線程安全確定的是Vector.但是Linkedlist不清楚。刪除元素複雜度我回答的是o(1)
6.繼續說如果讓你寫一個hashmap?
key和vlues.key是唯一的。但是有個hashcode方法。判斷兩個對象是否相等必須是hashcode和equals都相等
7.解決hashcode唯一的數據結構哈希散列表解決哈希衝突的方法?
我就說解決哈希衝突的方法幾種記不清了,有個取址法。
8.你對實習的一個要求是什麼?
我說就是想學習一個標準的體系吧!由於時間關係,到這裏結束。
9.您還有什麼問題要問我的?
我說給些學習的建議,他說建議不敢當,主要是學習方面的基礎知識多看一些,還有國內外的數據結構類型的書籍。
阿里
一面
1.Java虛擬機你瞭解嗎?
2.TCP/IP
3.基本算法快排的時間複雜度和選擇排序是穩定的嗎?
4.同步鎖分類
5.fragment的生命週期
6.在activity中如何更新fragment的值
7.Android的通信機制
8.Android的新技術
9.ListView和recycleview的區別
10.對校招有要問的嗎?
11.設計模式瞭解嗎?