下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
騰訊社招面試經(jīng)歷范文前提:本人2022年畢業(yè)于一個普通本科,工作不到2年。
15號晚上7點多,正在炒菜做飯,騰訊突然打來問我對他們的LinuxC++的職位是否感興趣,我敘述了我感興趣之后,就開始了一段簡短的面試,面試主要內(nèi)容:C++和TCPsocket通信的一些根底知識。之后就問我一道算法題:10億個整數(shù),隨機生成,可重復,求最大的前1萬個。當時我一下子就蒙了,沒反饋過來,何況我還正在燒著菜呢,所以我就沒細想,說了一個連我都鄙視我的思路:我說導入數(shù)據(jù)庫,然后用select語句選出最大的前1萬個。可能我的答案連面試官都無語了,所以他就沒再往下問了,不過他還是通知我明天16號早上去騰訊大廈筆試,由于我明天沒空,就推遲到了17號早上10點。至此,整個面試就結束了。過后,我想了想,10億個整數(shù)選前1萬個大數(shù),其實可以用:分治法+hash+多路歸并排序來做,比方說,先把10億個整數(shù)對1000取模,存儲到1000個文件中,然后對每一個文件進行內(nèi)部排序(比方快速排序,從大到小排序),然后再對這1000個文件進行多路歸并,取出前1萬個最大的數(shù)即可。
17號早上,懷著忐忑不安的心情,終于來到了騰訊大廈,在前臺表明情況后,領了一個臨時訪問牌,一個看起來30多歲的中年人(暫且稱為面試官A)接待了我,給我一份筆試題,時間為1小時。5道程序輸出寫結果或者程序找錯,5道編程題。這5道編程題大略為:
1、將一個4字節(jié)的整數(shù)的二進制表示中的001替換為011,輸出替換后的整數(shù)。
2、將一個數(shù)組右移幾位,比方數(shù)組為1234,右移一位即為4123。
3、輸入一個表示十六進制的字符串,轉換為十進制的整數(shù)輸出。
4、單鏈表反轉。
5、一個8*8的方格子,A點在左下角,B點在右上角,求A點到B點的最短路徑有多少條。
第1題,我理解錯題意了,順便鄙視一下自己,我當時的想法是這樣的:整數(shù)有正有負,不能拿該整數(shù)直接右移,所以我用了一個unsignedintmode=7進行左移,是直接拿整數(shù)與mode相與,得到的結果與001比擬,相同就替換,不同就把mode左移3位再與整數(shù)相與。面試官A直接指出我的思路有問題,相等替換后mode左移3位,不相等應該將mode左移1位,而不是左移3位,只有相等才把mode左移3位。這里順便說一下,筆試完之后,面試官A是拿著你的筆試題一題一題的問你,根據(jù)你的題目結果要你說出你的計算過程的。答案:將一個4字節(jié)整數(shù)的二進制表示中的001替換為011
第2題,由于這道題我之前做過,思路就是:先把左邊反轉,再把右邊反轉,最后把整個數(shù)組反轉就可以得到結果。但是悲劇的是,面試官A要我用數(shù)學證明我這種辦法的正確性,o(□)o,最后我只能說:我之前做過這道題。如果當時,我能套用線性代數(shù)中矩陣的轉置的思想來表明這道題,則這道題的證明可能說得過去。所以說,要對你寫的代碼負責,要知其然,更要知其所以然。類似題目:左旋轉字符串
第3題,進制轉換,簡單,不過要分別考慮大小寫字母。
第4題,簡單,就不說了。答案在我的另一篇博文:單鏈表逆置
第5題,我也是想錯了方向,由于沒有時間了,代碼我沒寫,我只寫了個思路:即從A點開始用廣度優(yōu)先搜索,第一個達到B點的肯定是最短路徑,記下此時A點到B點的步數(shù),然后統(tǒng)計從A到B點等于這個步數(shù)的個數(shù)。其實,廣度優(yōu)先搜索只能求出最短路徑,但不能求出所有的最短路徑個數(shù),要想求出所有最短路徑的個數(shù),要用回溯法(后面我會給出代碼)。想想當時面試的時候還振振有詞的向面試官A講解我的思路,也不知道面試官A是怎么想的,也不指出我的錯誤,怕是怕我難堪吧。
面試官A面完之后已經(jīng)是12點多了,這是又來了一個27、8歲的大哥(暫且稱為面試官B)來面試我,一上來就給我一道編程題,實現(xiàn)大數(shù)相加,給出代碼。我又刷刷的'寫了20多分鐘,認為沒問題了,就拿給面試官B看,看了一小會,就指出我的代碼錯在什么地方了,(哎,畢竟是手寫代碼,錯誤肯定很多),要我改過,一步一步的引導我將我的代碼改過,非常和善的一位大哥哥,也是和我聊的最久的,聊到了下午2點多,差不多兩個鐘頭,期間主要問的問題各種各樣都有:
1、技術相關:map的實現(xiàn)機制是怎么樣的啊;模板類的偏特化;動態(tài)加載dll和靜態(tài)加載dll的區(qū)別;線程和進程的區(qū)別;TCP的四次揮手協(xié)議;給定兩個數(shù)組a和b,求所有在a數(shù)組中不在b數(shù)組的元素;快速排序的平均時間復雜度是多少,證明它的平均時間復雜度等。這些問題我都一一說出了我的答案,主要是我看過一點、,所以沒覺的有什么難度,好似他也覺得我答復的還不錯。
2、其他:3點一刻,求此時時針和分針夾角的度數(shù);對騰訊這個公司怎么看;為什么離職;個人規(guī)劃等。
面試官B面完之后,叫我先出去吃午飯,下午回來還有一次面試。吃飯歸來之后,又來了一位也是27、8歲的大哥(暫且稱為面試官C),給我?guī)椎肋壿嬵},要我20分鐘寫出答案,在我和他講解我的邏輯題之后,他問了幾個我不熟悉的或者已經(jīng)記不清答案的問題:一個進程由哪些方面構成,我記得一書上有講,但我記不清了,吱吱嗚嗚也沒說出一個所以然來,之后又問了一個我不懂怎樣答復的問題:你認為你的優(yōu)勢是什么《作為一個二流學校畢業(yè)的絲,工作還不到2年,沒學歷,工程經(jīng)驗又沒什么亮點。實在不懂怎么說,憋了半天只說出一句:我根底還行。之后就沒在問問題了,最后面試官B通知我可以回去了。哎,這可能就是導致我最后悲劇的原因吧。
總結:
1、沒有大公司面試經(jīng)驗,并且由于事先也完全沒有做準備,好似趕鴨子上架
2、根底一定要扎實,C++,數(shù)據(jù)結構和算法,操作系統(tǒng),網(wǎng)絡編程要熟悉。
3、對自己寫的代碼負責
4、騰訊的員工非常友好
近期目標:
1、看數(shù)據(jù)結構和算法
2、熟悉C++編程標準。
3、多看別人寫的優(yōu)秀源碼,爭取自己寫的代碼簡潔易懂
最后:
給出筆試的最后一道編程題的題目和我寫的答案,如果有任何問題,請指正。
題目:給定一個8*8的方格子,如圖所示所示,求A點到B點的最短路徑有多少條《用算法實現(xiàn)。
答:從圖中可以看出,A點到B點的最短路徑為16,即A點橫走8小格,縱走8小格才能最快達到B點,這是排列組合的問題,即從最短路徑16當選取8個橫走的小格子(或者從最短路徑16當選取8個縱走的小格子)。所以從A點到B點的最短路徑條數(shù),直接可以算出來,即為:
代碼如下:
size_tg_num=0;//統(tǒng)計A點到B點的最短路徑條數(shù)
voidshortestPathNumber(chargrid[9][9],introw,intcol,int&step)
{
if(row8||col8||grid[row][col]=='*'||step>16)
{
return;
}
if(row==0&&col==8)
{
if(step==16)//已達到B點,且等于最短路徑16,就累加
{
g_num++;
}
}
else
{
grid[row][col]='*';//標記該點已訪問
step++;
shortestPathNumber(grid,row,col+1,step);
shortestPathNumber(grid,row+1,col,step);
shortestPathNumber(grid,row,col-1,step);
shortestPathNumber(grid,row-1,col,step);
grid[row][col]='.';//回溯
step--;
}
}
int_tmain(intargc,_TCHAR*argv[])
{
chargrid[9][9]={0};
intstep=0;
shortestPathNumber(grid,8,0,step);//從A點開始搜索
cout
return0;
}
size_tg_num=0;//統(tǒng)計A點到B點的最短路徑條數(shù)
voidshortestPathNumber(chargrid[9][9],introw,intcol,int&step)
{
if(row8||col8||grid[row][col]=='*'||step>16)
{
return;
}
if(row==0&&col==8)
{
if(step==16)//已達到B點,且等于最短路徑16,就累加
{
g_num++;
}
}
else
{
grid[row][col]='*';//標記該點已訪問
step++;
shortestPathNumber(grid,row,col+1,step);
shortestPathNumber(grid,row+1,col,step);
shortestPathNumber(grid,row,col-1,step);
shortestPathNumber(grid,row-1,col,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 消毒劑與微生物相互作用-洞察分析
- 水產(chǎn)養(yǎng)殖中魚病的預防與控制技術研究-洞察分析
- 冬季防火人人有責精彩講話稿(5篇)
- 辦公室文化與高效報告文化構建
- 豬肉加工廠設備采購招標合同三篇
- 辦公用品在小紅書的社交化銷售策略研究
- 個性化字體在多媒體中的運用
- 辦公環(huán)境中嵌入式系統(tǒng)的節(jié)能設計挑戰(zhàn)與解決方案
- 專業(yè)師資的跨界交流與合作機會探討
- 辦公室服務升級與客戶體驗的關聯(lián)分析
- 2021利達JB-QG-LD988EL JB-QT-LD988EL 火災報警控制器 消防聯(lián)動控制器調試手冊
- 兒童文學概論(第二版) 課件 第3、4章 中國兒童文學概述、外國兒童文學概述
- 2024年度思政課一體化建設活動方案
- 全國交管12123駕駛證學法減分試題和答案(50題完整版)499
- 部編版三年級語文上冊期末測試卷(匯編)
- 中華法文化的制度解讀智慧樹知到期末考試答案章節(jié)答案2024年西華大學
- 維保技術服務方案
- 陜西中考數(shù)學第二輪復習策略講座
- XXX學校領導包班工作實施方案范文
- 經(jīng)典廣告賞析智慧樹知到期末考試答案2024年
- 護理操作吸痰
評論
0/150
提交評論