明明在北郵人上找了學(xué)姐內(nèi)推欧漱,也收到郵件讓我完善簡歷了,但后來還是發(fā)短信讓我參加筆試葬燎,奇怪了误甚,不管了,該走多少程序就走多少吧谱净,這樣的大公司也是抱著能走多遠(yuǎn)走多遠(yuǎn)的心態(tài)窑邦。
模擬筆試
收到短信的第二天就是模擬筆試,安排的還是很緊的壕探,最近實(shí)在是忙成了狗冈钦,多線程工作令我有些過載,不過還好模擬筆試只是一小時(shí)李请,終于還是抽出時(shí)間瞧筛。
前半個(gè)小時(shí),15道選擇題导盅,其中掌握不熟練的有C++的語法題较幌,指針題(free,delete的用法)白翻,計(jì)算設(shè)備的使用效率(多個(gè)任務(wù)乍炉,單CPU,雙設(shè)備,可搶占)岛琼,二分查找效率底循,時(shí)間復(fù)雜度的計(jì)算,網(wǎng)絡(luò)層協(xié)議種類(傳輸層:TCP和UDP衷恭,網(wǎng)絡(luò)層:IP此叠,ARP,RARP随珠,ICMP灭袁,IGMP)等等。
后半個(gè)小時(shí)窗看,3道編程題茸歧,這時(shí)間對我來講有些緊張,第一道生成N階格雷碼(去年在leetcode似乎做過)显沈,第二道求數(shù)組中出現(xiàn)次數(shù)超過數(shù)組元素個(gè)數(shù)一半的數(shù)软瞎,第三道是大數(shù)乘法(大二程設(shè)做過,大三匯編也寫過一次拉讯,可是這次還是思路不清涤浇,加上時(shí)間緊迫,最后沒有寫完)魔慷。補(bǔ)充一句只锭,騰訊的在線編程是可以支持Python的。
筆試
騰訊的正式筆試居然在清明放假的時(shí)候院尔,也是夠拼的蜻展,不定項(xiàng)選擇沒有一題我敢保證自己是對的,真是心塞塞啊邀摆,然后四道大題纵顾,第一題考sql寫法,sql我只會簡單的增刪改查栋盹,每次還是查資料才寫的出來施逾,結(jié)果考個(gè)高級點(diǎn)的卡了我好久,最后也不一定寫對例获;然后是編程題音念,問字符串刪除任意字符后得到的保持順序的最長回文字符串長度,回溯法寫的蛋疼(后來看到討論區(qū)做法很巧妙啊躏敢,先對字符串求逆闷愤,然后求最長公共子序列就好了),第二題純模擬倒是寫出來了件余,看來算法這塊我還是欠缺的很讥脐,而且回溯之前一直用Python寫遭居,如果用C++可能又是另一種寫法了,這個(gè)之后也要繼續(xù)學(xué)習(xí)旬渠;最后問答題談?wù)剆tack和heap的區(qū)別俱萍,也是隨便扯了幾條而已,總的來說這次筆試是不開心的告丢,而且其中幾題還偷偷用手機(jī)查了下枪蘑,輸了考試還輸了人,不開心岖免。
筆試結(jié)束后幾天岳颇,突然收到短信,說更新了PC客戶端的崗位要求颅湘,建議我轉(zhuǎn)后臺開發(fā)话侧,可能是PC客戶端投的人太多了,于是我就轉(zhuǎn)了后臺開發(fā)方向闯参。
一面
騰訊在蘇州街海潤艾麗華酒店租了一層進(jìn)行面試瞻鹏,挺近的。面試現(xiàn)場如戰(zhàn)場鹿寨,超級多人新博,超級多面試官,等著領(lǐng)號脚草,像科目二考試一樣赫悄,也接受霸面簡歷。
一面考題總結(jié):
自我介紹玩讳,感覺得總結(jié)一個(gè)套路啊嚼贡;
項(xiàng)目熏纯,還是講的加密流識別,感覺不合今天這個(gè)面試官胃口粤策;
網(wǎng)絡(luò)樟澜,TCP三次握手;
數(shù)據(jù)庫叮盘,MySQL存儲引擎秩贰,Innodb的索引;
操作系統(tǒng)柔吼,線程安全毒费,poll,select愈魏,epoll的區(qū)別觅玻;
數(shù)據(jù)結(jié)構(gòu)想际,紅黑樹,哎溪厘,基本不懂胡本,平衡搜索二叉樹還稍微懂點(diǎn);
日志分析畸悬,日志包含兩項(xiàng)侧甫,第一項(xiàng)是IP,第二項(xiàng)是時(shí)間蹋宦,日志有5億條披粟,IP去重后也有1億條,而內(nèi)存只有100M妆档,要講IP按出現(xiàn)次數(shù)從大到小排序僻爽,怎么辦,往外部排序去考慮了贾惦,但還是沒答出來面試官想要的胸梆;
手寫C++程序,int count(const char * page)须板,統(tǒng)計(jì)page字符串中"tencent"的出現(xiàn)次數(shù)碰镜,字符串由單詞組成,單詞由空格分開(可能有多個(gè)空格)习瑰,這題不難绪颖,但要求10分鐘內(nèi)用C++寫完,0bug算過甜奄;
什么時(shí)候能來柠横,實(shí)習(xí)能持續(xù)多久,意向北京還是其他课兄;
面試結(jié)束從蘇州街走回學(xué)校牍氛,路過人大西門,吃了碗米線烟阐,路過城鄉(xiāng)倉儲超市搬俊,買了瓶匯源果汁,促銷蜒茄,才五毛錢唉擂。
二面
一面后一天接到二面通知,中間相隔一天檀葛,二面直接騎自行車去的玩祟,大概10分鐘就到了,非秤炝快卵凑。預(yù)約10點(diǎn)半庆聘,大概10點(diǎn)15就叫到我的號了,那么我就進(jìn)去了勺卢,又是一個(gè)老者伙判,我現(xiàn)在對老面試官有點(diǎn)怵。
面試官先看了我簡歷大概2分鐘黑忱,我以為二面項(xiàng)目為主呢宴抚,結(jié)果大概實(shí)在是對我的項(xiàng)目不感興趣啊,就說咱們問點(diǎn)基礎(chǔ)吧甫煞,總結(jié)如下:
C++菇曲,多態(tài)怎么實(shí)現(xiàn),const * 和 * const的區(qū)別抚吠,STL中如何實(shí)現(xiàn)枚舉(應(yīng)該談迭代器的嗎)常潮,vector和list的區(qū)別,list是如何枚舉的楷力,函數(shù)模板如何定義喊式;
Linux,把文件夾打包成文件怎么做萧朝,讓一個(gè)程序定時(shí)執(zhí)行怎么做(Linux真的不熟悉岔留,其實(shí)這些問題很基礎(chǔ),但是我答的不好)检柬,socket編程献联;
算法,有1000萬個(gè)自然數(shù)何址,大小為1~100 0000里逆,是亂序的,怎么以最快的速度排成有序(我正要從最基礎(chǔ)的假設(shè)內(nèi)存夠大說起用爪,可以用哈希map原押,結(jié)果直接被打斷,告知面試結(jié)束)项钮;
知識獲取班眯,平诚M#看了哪些書(這個(gè)問題很常問啊烁巫,我應(yīng)該攢一波高逼格書單應(yīng)對);
總的來說宠能,騰訊二面極其糟糕亚隙,2/3的題目回答不好,甚至有些答不出來违崇,暴露了自己Linux和大數(shù)據(jù)算法面前的薄弱阿弃,急需加強(qiáng)诊霹。回來查狀態(tài)渣淳,居然是處于HR面試環(huán)節(jié)脾还,難道過了二面,如果真過了絕壁是意涵團(tuán)起作用入愧。
HR面
二面結(jié)束心灰意冷鄙漏,結(jié)果中午吃飯回實(shí)驗(yàn)室就收到了下午兩點(diǎn)半HR面的信息,流程效率有點(diǎn)高棺蛛,但是也就是說我下午還得跑一趟啊怔蚌,哎,沒事旁赊,往好的方面想桦踊,今天就能把騰訊面試給告一段落,多好终畅。
到點(diǎn)按時(shí)面試籍胯,HR是SNG的,問我如果崗位是騰訊云的后臺開發(fā)有沒有問題声离,其實(shí)我選OMG是因?yàn)槲乙詾橹挥蠴MG在北京呢芒炼,沒想到SNG也有,那當(dāng)然是更好啦术徊”竟簦基本上HR面就是聊一聊教育背景、以前的實(shí)習(xí)經(jīng)歷赠涮、實(shí)習(xí)對自己而言最大的收獲子寓、崗位符不符合自己需求、什么時(shí)候能來笋除、能來多久這樣的問題斜友,但是HR最后一般都會問你還有什么問題問我的嗎,這個(gè)時(shí)候我往往提不出可以加分的問題啊垃它,好糾結(jié)鲜屏,是時(shí)候冥思苦想一個(gè)問題備用著了,很關(guān)鍵国拇。
至此洛史,騰訊校招實(shí)習(xí)面試流程走完了,回去等消息就好啦酱吝。
專家加試
本以為HR面結(jié)束流程就結(jié)束了也殖,沒想到還殺出個(gè)專家面,大概還是自己不夠優(yōu)秀吧务热,又備胎了忆嗜。專家面主要還是一些基礎(chǔ)問題己儒,倒是也能答上來一些,或許是沒有項(xiàng)目讓面試官感興趣吧捆毫,面完感覺也不好闪湾,面試官說缺乏大型項(xiàng)目經(jīng)驗(yàn),maybe還是跪了绩卤,但是問題還是要總結(jié)的:
C++:純虛函數(shù)和虛函數(shù)的區(qū)別响谓,重載和多態(tài)的區(qū)別,STL中map的實(shí)現(xiàn)方式省艳;
操作系統(tǒng):堆和棧的區(qū)別娘纷,多進(jìn)程和多線程的實(shí)現(xiàn),進(jìn)程間跋炕、線程間的通信方式赖晶,信號量和共享內(nèi)存的區(qū)別,gdb中找到文件某一行的命令辐烂;
計(jì)算機(jī)網(wǎng)絡(luò):TCP的三次握手遏插;
算法:常用的排序算法有哪些,堆排序的時(shí)間復(fù)雜度和推導(dǎo)纠修,斐波那契走樓梯胳嘲,棋盤從左上角走到右下角的走法;
一些知識點(diǎn)還是知道的扣草,但是電話上的表達(dá)我很難非常清晰地講清楚了牛,再一個(gè)短板就是Linux不熟悉和大型項(xiàng)目的缺乏,花點(diǎn)時(shí)間把Linux一些常用命令看看大概還可以補(bǔ)上辰妙,大型項(xiàng)目經(jīng)歷我真是沒辦法了喲鹰祸。