- 相關推薦
微信、網(wǎng)易游戲、金山西山居、人人offer及面經(jīng)
01
一面
一上來丟了6個算法題過來做,要四十分鐘的樣子搞定,單都是基礎算法,什么鏈表,二叉樹之類的,其中的兩個字符串的最大公共子串沒有較好的解決辦法。問key/value緩存,它具體是如何實現(xiàn)的。瓶頸在哪,怎么保證負載。后面問騰訊互娛后臺的負載均衡低耦合架構,這里說的不是很好。問磁盤效率優(yōu)化,如何做的優(yōu)化,測磁盤數(shù)據(jù)怎么測,通過什么命令(top,iostat),iostat的參數(shù)如何去看,讀寫隊列,等待時間與服務時間的比例,空閑比例。編碼規(guī)范(命名規(guī)范,固定的括號樣式,函數(shù)注釋與關鍵注釋,異常說明,類的訪問控制規(guī)范)。問網(wǎng)絡編程應該注意的地方(TCP和UDP取舍),問UDP實現(xiàn)可靠傳輸是如何實現(xiàn)的。是否做過測試,拿scp來做為對比的恰當性。問網(wǎng)絡方面的調(diào)試用到的命令,如tcpdump,lsof,netstat,問編譯器,如何實現(xiàn)的,是否考慮到中文編碼問題的解決。編譯器的實現(xiàn)流程。問查看一個進程的運行情況的命令,top,/proc/pid/,問如何統(tǒng)計出函數(shù)的使用頻率,用valgrind。==。壓力較大的一次面。。
02
二面
二面總監(jiān)面,自我介紹,之后問我做的最好的一個項目,說了編譯器,最后再叫我介紹個項目,說了UDP文件上傳服務,問了UDP可靠傳輸?shù)木唧w內(nèi)容,好奇為什么速度可以達到SCP的兩倍。問我本科為什么沒寫什么東西,答的不好。問平時讀什么技術書籍,自己說linux內(nèi)核詳解,我說內(nèi)存,介紹了一遍,最后問內(nèi)存這塊有什么用到項目中的嗎,其實是沒有,但可以說的更好一些的,如可以說對動態(tài)內(nèi)存的理解,線程創(chuàng)建實際的開銷在內(nèi)存方面是有多大。說了文件中的mmap,直接I/O。問三個優(yōu)點,最大的缺點。。
03
三面
三面hr面,自我介紹,以后自我介紹盡量要充實點,問了拿到幾個offer,問了以后的工作意向,是否愿意留廣州,問自己覺得做的最出色的一個項目,為什么是最出色的,嗯,這點要多想想。
順利拿到offer~
面經(jīng)
網(wǎng)易游戲
游戲研發(fā)工程師
01
筆試
這個要提下,總共三個小時的題量,而且題目都不簡單,前面30題的基礎題,每題一分,都不是好搞的。后面6個算法題,涉及數(shù)組靈活遍歷,算法非遞歸實現(xiàn),BNF,鏈表,圖,布隆過濾器等。大多是寫了一小問,難~(其實后面想想還是自己 對知識的靈活運用能力不足吧 )
02
一面
開始做的矩陣乘法測試題,反復檢查發(fā)現(xiàn)就只是矩陣乘法,還是自己想多了。首先自我介紹。介紹C++,C++和C的區(qū)別,出了個c++多態(tài)的例子,考的還算比較活的,但順利做出來了。介紹TCP協(xié)議。問了epoll,epoll的特性,LT和ET的區(qū)別。問了進程的內(nèi)存布局,由于都有充足準備,答的都可以。出了BFS算法和擴展問題,出了線段樹的問題,最后是一個如何以最快時間找到與給定點最近的點算法,說了取整預處理思路,但數(shù)據(jù)存儲會有問題,如果問題域是無限的,又如何去設計這樣的數(shù)據(jù)結(jié)構來存儲。問了編譯器的實現(xiàn)。
02
二面
一上來就是四張撲克牌要算24點,當時為毛想不出= =~,后面是給算法解決。桌面均勻放點算法,最后是要求一個點在扇形中如何隨機放的問題,說了按弧度和半徑來隨機的想法,但這樣會集中在扇形頂部,說了按頂部和底部的面積來分,這樣又不能處理連續(xù)的情況,而且也會出現(xiàn)同樣的問題,最后提到連續(xù)隨機密度函數(shù)的思路但沒能給出最終正解。給個隨機洗牌算法,如何證明洗牌是隨機的。也問了編譯器,叫我介紹一遍。最后問為什么沒有hr面了,他說需要的話可以給我安排。。我就很自覺的滾粗了~
順利收到offer
面經(jīng)
金山西山居
后臺開發(fā)工程師
01
一面
面試官是湖南老鄉(xiāng),一上來問了各種c++問題,如new,delete,malloc,free的區(qū)別, new a[5] 再delete a的編譯器未定義行為及深層原因探討 。接著問了個內(nèi)存分配,說堆中有1G的內(nèi)存,但內(nèi)存還夠用,但為什么就分配內(nèi)存錯誤了。問了C++類的構造順序。問了 TCP 的黏包 現(xiàn)象。一個是nagle算法,一個是應用層數(shù)據(jù)的包無邊界問題,這是無法解決的,因為TCP管不到應用層的事,它只負責按字節(jié)流傳輸。問了火車運煤,拉燈的智力問題。。開玩笑帶過去了。。。
02
二面
是個做手游3D的總監(jiān),一上來也是問編譯器,說不懂編譯原理,他就說你是怎么去做的這個東西,我就說了一通,最后他說這樣先實踐再看理論也是不錯的,說他喜歡這種搞鉆研的人= =~。。。后面問到多線程需要注意的問題,問到FTP做的目的。
03
三面
見到CTO陳飛舟,居然不認識他。。。首先也是一上來問了個編譯器的問題,函數(shù)聲明和函數(shù)定義是如何區(qū)分的,編譯器怎么判別出來。后面問到我做的騰訊實習這個作業(yè),說到并發(fā)策略那塊( 多CPU核開網(wǎng)絡中斷 是需要特殊網(wǎng)卡,特殊平臺及更高版本的linux支持)。問我有沒代碼積累,講他的代碼積累的習慣。問我以后想從事哪方面工作,跟我講他在各個不同產(chǎn)品部門間積累代碼,高效最優(yōu)完成的結(jié)果。講到選擇,講到自己認同公司的價值觀。講到游戲產(chǎn)業(yè),為什么虛幻三用不起(美術的整體工業(yè)環(huán)境不行,同樣的效果圖,美術資源是暴雪美術的4倍)。講到云風,講到雷軍和小米,看了下桌子上的小米3S工程機= =~。
拿到金山offer~ 這個offer真是很難割舍,幾輪面試官都給人印象都很好,整個西山居環(huán)境也很是不錯,自助食堂餐廳,工作間旁各種游戲機,在珠海拿著還不錯的待遇過的應該很舒服。。。
在婉拒offer后,面試官還給了我一些在微信和網(wǎng)易游戲間如何選擇的中肯意見,甚是感激。
后臺開發(fā)工程師
01
一面
一上來寫個 aabbbccddff 化為abcdef的去重算法,想復雜了 ,其實的話只要將后面的移到前面來就行了(我是不是太弱了。。。)。接著問騰訊實習作業(yè),磁盤的效率問題,并發(fā)的取舍,實現(xiàn)的UDP可靠傳輸效果如何, 最后考了個0(1)時間求棧中最大元素的算法。這個沒想出來 ,其實考慮到棧的出棧入棧特點的話,很容易解決了。
02
二面
一上來又是算法,畫個不規(guī)則的多邊形,現(xiàn)在每條邊都需要一條等長的木頭,給定一塊足夠長的木頭,要以最小的體力值把這些邊長木頭出來(體力值等于木頭的長度),其實這就是個 哈夫曼算法 。提示很多次才想到這里,還好最后算法實現(xiàn)比較快。接著問了linux查看內(nèi)存,查看磁盤容量剩余,怎么通過ls輸出目錄。
03
三面
問了key/value存儲,有什么優(yōu)缺點,什么場景下用。問了一個分布式key/value存儲要如何保證映射可靠,答通過中心代理來負責映射,那缺點又是什么。接著問,如果不同的例程都要向某個key更新更大的value值,如何在不用信號量,同步鎖這些的情況下保證最終value是最大的(同步, set get 循環(huán)巧妙 ) 。后面問了個海量數(shù)據(jù)中找第k大數(shù)(1.其實可以直接采用桶劃分,即使是64位也最多三次遍歷就可以了。2.也可以采用位濾除,但磁盤操作太多 3.k堆濾除,但k如果太大會頻繁交換內(nèi)存 4.分配到多機,多機同時外存排序,并有另外一臺機子作多路歸并)
順利拿到了offer~
【微信、網(wǎng)易游戲、金山西山居、人人offer及面經(jīng)】相關文章:
網(wǎng)易校園招聘筆經(jīng)面經(jīng)全程07-28
網(wǎng)易校園招聘全程-筆經(jīng)面經(jīng)11-28
農(nóng)行面經(jīng)、筆經(jīng)07-26
殼牌面經(jīng)07-26
BYD面經(jīng)09-18
Intel面經(jīng)07-06
面經(jīng):自圓其說07-12
NOKIA面經(jīng)11-28
eland面經(jīng)07-21