1. 程式人生 > >阿里校招應屆生面試經驗

阿里校招應屆生面試經驗

背景

今年大三暑假剛開始本來打算好好複習下,沒打算馬上去找實習,主要還是因為大四上學期還要上實訓課不能出去實習。後來突然收到以前ACM隊員的訊息,說可以幫我內推阿里的面試。於是我就寫好簡歷,發給了他。但兩週後都沒什麼訊息,後面我就自己去阿里官網檢視,的確有在招聘應屆生。這裡推薦大家去關注微信公告號:互聯派 (這裡不是打廣告,的確是個很好的校招渠道,對大家很有幫助) 上面有很多的校招資訊,包括內推。我就是在互聯派上重新交的簡歷。

流程

我在互聯派上有幸得到內推渠道,所以這邊就講內推渠道的流程。

  • 發簡歷給指定的郵箱(一般都會有指定的內推人的郵箱,或者是平臺的郵箱會幫你帶發給招聘公司)

  • 發完簡歷後,一般會回郵箱給你到阿里的校招網註冊資訊(填簡歷資訊)

  • 填完後,阿里會讓你做素質測評跟線上程式設計(其實可做可不做,但做好了會增加面試機率)

    1. 素質測評:考的比較綜合性的問題,有關一些問題的解決方案,概率題,智力題,職業素養之類的
    2. 線上程式設計:程式設計題,我當時考的是一題有關資料結構二叉樹森林的,有一個數組,每個元素節點 資訊(id,parentId(下標),value),求從根節點到每一個葉子節點經過路徑上value和的最大值。

      我當時寫的方法是先找出所有的葉子節點(O(n*n)),再從葉子節點回溯求和,便可以求出最大的到達根節點的路徑(O(m*logn))。後面我發現其實不用找出所有的葉子節點,直接對每個節點回溯,最後自然能得出最大值(O(n*logn))

      (線上程式設計的時間只有40分鐘,所以還是很緊迫的,找準思路再寫還算來得及)

  • 電話面試(就寫當時還記得的問題)

    然後那天我剛做完線上程式設計測試,過一兩小時後就收到了電話面試,太突然了,我還沒想到這麼快。

    1. 求一個數組前K小的數
      這題我在《劍指offer》上有看過,一時沒想起好的做法,我就寫了法一:快速排序後直接輸出前k個值(O(n*logn)),法二:用一個容器大小為k的優先佇列維護,到最後再輸出(O(n*logn))。當時面試官還讓我手寫下快排,我也照做了,最後當然這肯定不是面試官想要的正確答案,其實有(O(n))的寫法,很難過當時沒有馬上想起來。(這裡提示下,一般程式設計題,阿里會讓你在一個網頁上寫程式碼,會給你30分鐘(實際20分鐘左右),所以最好在那時想好最好的解決方法,不然在電話裡面試官是不會給你太多時間思考的)
      這題的答案自己百度吧(O(n))的方法很多,《劍指offer》上的解法是用快排思想+二分
    2. HashMap原理
      我的回答是在jdk1.7之前用hash表,陣列加連結串列的形式,在jdk1.8後hashMap進行了大規模改動,當連結串列大於8時會轉成紅黑樹。
    3. 紅黑樹原理與優勢
      原理大家就自己百度吧,就是紅黑樹的5個定義,優勢插入,查詢,刪除的時間複雜度為(O(logn))
    4. jvm的記憶體模型
      分5個部分:程式計數器,虛擬機器方法棧,本地方法棧,方法區,堆
    5. 專案經驗(問你所做的專案的有遇到的難點)
      我做的都是安卓專案,那些專案實際上都沒什麼難度,我就隨便講了個自定義控制元件的方法流程,但感覺他並不在意,的確是沒有抓到他的關注。
    6. 自己的經歷
      有獲得獎的,或做過什麼專案的都可以講,遺憾的是面試官對我的獎不感冒,專案也不感冒,所以最好是有一個可稱亮點的獎或專案,才能更好的體現自己 ->>(關於怎麼算亮點,ACM區域賽金獎等大型比賽前列名次,專案經驗很豐富,十分有技術含量的專案,發表過比較好的論文等)。如果以上都沒有的話,可以從側面展現自己的軟實力,比如熱愛學習,學習效率快,像我這樣多寫寫部落格吧。
    7. 怎麼做出一個像淘寶那樣每次開啟都會給你推薦一些你可能喜歡的物品進行排序?
      這題讓我想自己的思路,但我想的方法根本跟他想要的不搭邊,後面才知道這題是機器學習推薦系統,要回答這題首先得會一些主流的推薦演算法
  • 後面就等通知了
    估計沒什麼希望,沒有什麼地方讓阿里面試官感覺印象深刻的,還是趕快再好好提升下自己。

面試複習方向

這是從阿里秋招直播的老師那推薦的資料:
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

總結

每次面試過不過沒關係,重要的是發現自己不足的地方,及簡歷改修改的地方,不斷的提升自己才是硬道理,還有要相信自己!不要放棄任何大公司的面試機會,不管自己是不是211,985,只要有面試機會就有可能,有時運氣還是很重要的,當然運氣都是給有準備的人,還是先好好提升自己為前提吧。