一、前言
剛剛面完網易互娛服務端開發(實習)一面,面完就想抽自己,怎么能這么菜。唉,先不多說,直接進入正題。
二、正文
1、面試官提問
1、自我介紹
答:唉,太菜了,沒什么額外介紹的,直接背簡歷了(;´༎ຶД༎ຶ`)。
2、介紹一下Java中的引用類型?
答:強引用,軟引用,弱引用,虛引用。然后簡單介紹了一下他們的作用以及JDK提供什么類使用這些引用(虛引用的類名記不清了,直接說了P打頭的一個類......)。
3、為什么需要這些引用?
答:我直接拿ThreadLocal中的ThreadLocalMap,它的key是弱引用舉例,講了一下為什么需要這些特殊的引用。總結下來就是防止已經不需要的引用影響垃圾回收。
4、介紹一下垃圾回收算法?
答:引用計數、可達性分析、標記-清除、復制算法、標記整理。
5、如何判斷鏈表有環?
答:快慢指針。
6、還是上面這題,有沒有可能出現快指針跳過慢指針,導致判斷錯誤?
唉,這里后面想想真是想抽自己。這個問題之前考慮過,這里一下沒反應過來,就說這個我之前想過,我思考一下(我居然傻了吧唧地說之前想過,這不就讓面試官覺得我在背答案嗎(T_T))。想了一下之后,就直接通過具體情況分析了一下,比如快指針在慢指針之前會怎么樣,快指針和慢指針相鄰會怎么樣......總之就是最后一定會相遇;
7、兩棵二叉樹,一大一小,如何快速判斷小二叉樹是大二叉樹的子樹?
唉,這題答得真的太爛了,后面都想抽自己。這題在劍指offer上寫過,當時主要是用的遞歸判斷,然后說了一下遞歸,但是敘述的太爛了。然后之前寫這題的時候,我還想過一個思路,就是記錄兩棵二叉樹的先序遍歷和中序遍歷,如果小二叉樹的先序遍歷和中序遍歷,都包含在大二叉樹的先序遍歷和中序遍歷中,那就認為是子樹(前提是樹種的節點值唯一)。然后面試官好像覺得這種算法不行,問我為什么可以,我說我沒有論證過,然后想了想說可能會存在問題,然后面試官又問什么情況下會有問題........實際上我覺得是可以的,暫時想不出反例,於是結結巴巴,最后含糊地說應該可以,然后就斷網了,斷網了,斷網了........趕緊開熱點重連。
2、我提問
重連之后,面試官說已經超過了預定時間,問我有什么想問的,限一個問題:如果要盡快參與到實習,需要重點學習哪些內容?
答:工作中需要用到很多開發工具,如果提前掌握會比較有優勢。
總結
面試大概半小時,問的問題還是相當基礎,但是自我感覺真的是太爛了,首先就是自己的表述能力太差,感覺自己的回答總是不夠清晰明了,抓不到重點。然后就是,一到自己回答不出來的問題,就結結巴巴,在壓力情況下容易受到影響,不能堅持自己的觀點,並且表述不清楚。而且臨場反應太差,需要臨時發揮就腦袋空白。最后就是不夠果斷,如果不是特別清楚的問題,回答總是很猶豫,而且還經常出現好像,應該等詞匯。
唉,后面如果還有面試,希望能夠將上面的問題改正。最后,許願一面通過。