在長達半個月的等待之后,終於迎來了人生中的第一次面試,感謝吉比特以及面試我的......哥哥?還是叔叔?(沒看太清)把我撈起來,總共持續了大概50min。
面試的內容有一部分是准備過的,但是也有好幾個問題是我沒有接觸過的。
一、基礎知識
- static關鍵字怎么理解的......
- const關鍵詞呢?......那如果const修飾一個函數呢?比如:const{}。遇到過嗎?---我在編程中沒遇到過,不好意思。
- 多態知道嗎?......說了靜態--函數重載,動態---虛函數)
- 虛函數表知道嗎?......(每個類一張表,對象掌握指針去訪問,可以被繼承......)那你知道虛表的底層是怎么實現的嗎?---不知道
- 內存泄漏知道嗎?......那怎么檢查泄露呢?......
- 模板知道嗎?......不知道,只知道vector、map、unorder_map等都是模板
- 智能指針知道嗎?......(shared_ptr,unique_ptr,weak_ptr)......計數器.......禁止拷貝和賦值操作......那unique_ptr底層是怎么實現的呢為什么就禁止拷貝和賦值呢?(填坑:unique_ptr探究)---不知道,那weak_ptr怎么用的呢?......只知道和shared_ptr好像是一起用的。
- 深拷貝和淺拷貝知道嗎?......
- 隱式類型轉換知道嗎?---不知道,只知道強制類型轉換(后來想想似乎課上講過...)
二、操作系統
- 進程通信的方式......(信號量、管道、共享內存、套接字、還有幾個不常用的)......你剛才談到剪貼板,你認為它安全可靠嗎?.....不可靠......
好像還有的,忘記了
三、數據結構
- 常用排序算法以及復雜度分析一下?冒泡、選擇、直插、歸並、希爾......
- 堆排序了解嗎?.......堆的建立復雜度怎么樣?......
- 二分查找了解嗎?復雜度是多少?......
- 哈希沖突怎么解決呀?......
- 紅黑樹了解嗎?......(和平衡二叉樹比較了一下查找、插入和刪除復雜度)
- 如何判斷圖的聯通性呢?(dfs,bfs,並查集)......那你知道並查集是怎么實現的嗎?---不知道,不好意思。
- 最小生成樹知道嗎?---不知道。
- 一個文件去除重復行......(我問這個文件大嗎?-先從小的說起)...Linux中 sort | uniq > *.*,awk '!x[i++]' Windows中可以用map來存,逐行查找....那這個文件很大怎么辦?大到內存裝不下怎么辦?-(我問可以給點提示嗎?-利用外存)......最后還是認慫,不知道了。
四、設計模式
- 知道那些設計模式?......
- 組合和繼承怎么用?---不會
- 單例模式了解嗎?
- 寫一下多線程下的單例模式吧,就寫一下getInstance吧!......
五、簡短的聊
- 你有什么問題嗎?---請評價一下我今天的表現吧......
- 我又補充了一個lambda表達式......又問了我一個右值引用......不會。
- 想做客戶端還是服務端......(我說我都可以,我還年輕還能學習......)
- 能實習多長時間......
沒和我閑聊多少,大概是看我太菜了吧.......
結束。
后記
第一次面試,面試官還不錯,會引導你。現在還不知道結果。通過這次面試我也知道,我還有很多需要學習的地方。比如設計模式該好好撿一撿了。圖的方面也不熟,
昨晚做了360的筆試,有種想哭的感覺。從前我覺得人和人的智商差距不大,但做過智力題之后,我有所改觀了。周六還有騰訊和網易的筆試,加油吧,菜雞!