2014-04網易、微軟、百度、騰訊、阿里實習生招聘經驗與經過

網易、多益、百度、騰訊、阿里、微軟實習招聘筆試及面試全過程

樓主開始投的是阿里,騰訊,微軟,百度,多益,其中前兩個不是投研發,被虐了,爲了找自信,果斷開始研發了,樓主看中的是遊戲開發(外包不幹),樓主可以很自信地說,研發還是能虐虐的。

首先是微軟,你媽的,我真是微軟的忠實粉絲呀,從98到Win8,從VC6到VC12,從COM到DCOM我都用過學過呀,網上有個OJ比賽,居然說大爺寫程序太差,直接給我掛了,我操你大爺的。

阿里,筆試感覺做得不錯,投的數據挖掘,一面面試官說喜歡我的性格(愛搗鼓東西),雖然數據挖掘不懂,不過,數學基礎好(問的幾個數學問題,我都超答案地回答了),學起來快,然後放我過了。二面上來就讓我講講動態規劃,我講了,她說我講得不對(我不想與她爭),然後又問我數據挖掘算法,我說我不會,她就直接來了一句,你都不會,我沒看出來你喜歡這個方向,然後HR又開始挖苦我,問我對自己以前的人生滿意不,你媽的,坑我呢,這。

騰訊投的是安全,筆試蠻難的,各種不會,居然過了。。。,面試的時候,有個師弟在我之前進去的,表示人家對我們實驗室的方向沒興趣,人家就要Andorid apk安全,然後果斷悲劇了,不解釋。

多益,我在北京的北郵筆試的,三個題目,毆打了一回小朋友,直接虐掉,然後果斷拿到面試機會,可惜,跟網易衝突,沒法去呀。

樓主就說說網易吧。

首先是網上投簡歷,樓主以前的簡歷寫的是精通SDK、精通C++、精通數學基礎,後來低調了許多,寫成熟練掌握。當然,樓主以前的代碼行數超過20W,其它的不解釋,對吧。當然,樓主sdk寫了四年,C++寫了六年,這些是實在的數據對吧。簡歷寫得比較實在,結果過了。然後是一面,一面面的是C++和算法。

 

       面試官首先問你用過Directx,那麼,你會渲染管線麼,我說不會,以前只用過一個低版本的Directx,當時做的時候就是往顯卡里面寫數據。面試官說沒事,我只是問一下而已。然後是C++,主要是一些概念和語法,比如:引用和指針有什麼區別與聯繫,還有,sizeof對指針和引用的結果有什麼不同,還有,sizeof指針的結果是多少,extern有什麼用,模板特化是什麼。其它還有許多,我不記得了,反正我覺得蠻簡單。算法有兩個題目,各分兩個小題。

第一個是最大子列和,我速度說了是動態規劃,然後它問,如果數改成複數,和改成模呢,我想了一會,說暴力可以,面試官不太滿意,說你再想想,我說我不知道了,面試官又說,你考慮一下幾何意義,我當時真是醍醐灌頂,立刻回答了,複數的幾何意義是點,模的幾何意義是長度,這個題目等價於平面n個點求最長點對,面試官說對的,那如何解呢,我說,最長點對在凸包上,求出即可,面試官問,複雜度多少,我說O(nlog n)------其實不用求凸包的,最長點對中的一個點顯然要麼x最大,要麼y最大,要麼x最小,要麼y最小,滿足這四個條件中的一個的點最多常數個,暴力一個,O(n)完事。

第二個題目是概率的,你現在有一個函數F(),只能返回0-1之間的隨機實數,你如何利用F(),使得以P(1)概率返回1,P(2)返回2…P(n)返回n,樓主想了一會,說調用一次F(),如果小於P(1)就返回1,否則小於P(1)+P(2)返回2,否則小於P(1)+P(2)+P(3)返回3…這樣就行了。面試官問,這樣複雜度多少,我說O(n),面試官說如何優化呢,我說可以用huffman樹優化,其實if else連對應於二叉樹,這個是帶權值的最短葉長度,果斷huffman,然後它問了,複雜度多少,我說您指的是構造huffman編碼的複雜度麼,它說不是,假設那些預處理已經好了,我說那麼就是O(lg n),即二叉樹的平均深度(其實應該比這個小,但是,具體值肯定與P序列有關,但是,這麼答肯定是對的),然後面試官說我們面試到這裏結束了。面試完,樓主知道肯定過了。(都做出來了,你還能掛我?)

二面,上來是手寫代碼,樓主就會寫程序,不解釋,果斷秒掉。然後等着面試,面試官好像因爲飛機延遲,等了一個小時,樓主就去廁所蹲坑了,剛剛蹲下,HR打電話了,同學你好,到你面試了,你在哪呢?我了個去呀,我回答了一句,我五分鐘到,然後去了。面試開始,分三個部分。

第一部分,算法題目,給你一個m*n的矩陣,求其中有多少個子矩陣的和爲k,樓主看了一下,問:這個矩陣的數字有什麼特點麼,面試官答,沒任何特點,只是數而已。我問,全是正的麼,答,不是。樓主想了10秒,說了兩個字,暴力枚舉。面試官問,如何暴力,樓主答,暴力出左上和右下兩個點,然後算和就行,面試官問,如何算何,樓主答,先對原矩陣做一個預處理,第(I,j)位置的數寫成(0,0)->(I,j)的和,然後暴力左上,右下兩個點的時候可以在O(1)算出和,總的複雜度O(m*m*n*n),面試官沒說話了。樓主知道pass。

第二部分,智力題,網上有,樓主當時沒想出來,媽的,主要是中午沒吃飯(喝了一點湯),然後頭也暈(我2.9分到的,2.10分開始筆試手寫代碼),心態比較不好,沒做出來。這一部分算掛了。

第三部分:簡歷問,看到我寫的我寫了一個STL,面試官問,你的vector的push_back如何寫的(你先不考慮allocator),樓主知道一般是直接放,如果滿了,就分配兩倍的空間,然後說了一通,面試官不滿意,說,分配兩個空間的代碼寫成Type* buf= newType[size*2],這樣的話,有size-1 個位置其實沒有對象,可是你還是給它分配了,還調用了構造函數了,這如何解決?樓主當時誤解了意思,說,你不分配2倍,下次如果再push_back,你還得再分配,面試管繼續解釋,不過,越解釋越糊塗,我後來算是明白了,原來 是placement new,我說,構造函數調用其實是多餘的,不需要調用,可以直接寫成void* buf= new char[sizeof(Type)*size*2];,然後copy對象的時候用placement new去幹,面試官又問placement new 的語法,樓主說了,面試官沒說什麼。這也算過了吧

 

第四部分:聊天

你玩遊戲麼,玩;你玩什麼遊戲,war3 &&dota;你玩什麼英雄;dota裏面玩猴子,SPE,火槍,PA,一姐。你有被針對的時候麼說說,有一次,我猴子,對面有個賞金,什麼都不幹,就一直在也區轉,然後有個白牛,兩個就一直抓,結果30分鐘也沒出到輝耀,還有一把,一姐,34分鐘假腿,分身,林肯,蝴蝶,結果對面直接一波高地,強衝,然後團滅,輸掉比賽。又問,你說說你影響比較深刻的幾把,我說,一把我是火槍,隊友退了三個,只剩下巨魔和我,我都覺得可以放棄了,巨魔卻一直說,沒事,打錢,然後一直farm,結果巨魔蝴蝶,bkb,撒旦,龍心,投了boss,打了對面一個團滅,我是火槍,因爲要翻盤,只能聖劍,然後打對面幾個團滅,贏了。 這一把讓我明白了不要輕意放棄。還有一把,我是SPE,對面龍騎早就BKB,強襲,大炮,隊友一開始就吵架,fw不敢上去吼,我當時20分鐘假腿,先鋒,3800,比較順,我覺得有機會翻,我就讓fw打個跳,然後我隊友一直抱團,打架我開大,先秒龍騎,打了幾個團滅,贏了,這比賽讓我明白團結對於一個團隊特別地重要。面試官又問,你覺得你是dota裏面哪個英雄,我回答,一姐,如果團隊不需要我的時候,我會默默地farm(學習,幹活),如果需要我,我會擔當起輸出的重任,挑起團隊的大梁,帶領團隊走向勝利。

最後面試官問,你有什麼問題想問我的嗎,我就問了兩個,一個是聽說有導師帶,還有項目,我想問下下,項目和以後工作 有什麼關係,第二個是廣州和杭州有什麼關係和區別。面試官很耐心地回答了十多分鐘,我一直認真地聽着,然後說了一句,謝謝您,走出了面試場地,心情很不好,因爲智力題沒做出來,不開心。然後以爲掛了,今天收到了offer,開心呀。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章