HuLu筆試面試經驗
10.7上午接到HuLu打來的電話問晚上有沒有時間,要電話面試,我說可以,第一次接到電話,而且還是電面真有點兒緊張。
晚上8.00整電話準時打過來,先讓自己介紹了一下花了2分鐘左右,然后讓我選擇一個自己喜歡的項目介紹,介紹項目花了3分鐘多一點兒,然后他問了一些簡單問題:
l 項目的難點
l 存在的問題
l 如果再給我兩個月,讓我說出項目還可以做何優化
然后開始面試技術問題:
第一個問題是語言掌握情況,接下來都是算法問題
1、 問會不會C++,我說看過書,沒做過項目,然后他說:“那你C很熟了”,我說還可以吧,他問如何減少內存泄漏或多次釋放同一個內存帶來的危險,我就按照C 語言的編程風格說盡量在一個函數內申請空間然后釋放,malloc 和free不要跨函數,然后他問C++如何實現,我說,類里面如果有指針成員,必須自己實現拷貝構造函數、重載賦值運算符,感覺他不太滿意,又問我智能指針如何實現,忘了L。
問算法問題前,他先說明如果我見過告訴他,說不要浪費時間,我感覺如果你見過四個只跟他說你見過兩個最好。
2、 問我對web技術了解如何,我說不太了解J
3、 冒泡排序復雜度,快速排序復雜度【問得很淺】
4、 已知二叉樹的兩個節點,求最近的公共祖先
我說很早就見過,他就直接問了下一個問題
5、 1—n,共n個數去掉一個,如何快速知道缺失的數?
我說見過,他又問,如果少兩個呢?我想了一下,說可以申請空間類似于散列的方式來做,就散列他又問了幾個問題:
(1)、我平時常用的散列函數
(2)、對字符串如何構造散列函數
(3)、沖突率如何,如何解決沖突
回到原題,他說這種方法可以,但是申請可額外空間,如何不申請額外空間,我想了好一會兒:說可以這樣求出 a+b和a*b即可,他說這樣不好,馬上說”不能說不好”(J),讓我想想別的方法,最后他說可以求出a+b和a^2+b^2。
6、 兩個鏈表如何判斷相交
我說見過,他說如何找出交點?我想了一會兒說,先求出鏈表長度,然后申請空間存儲鏈表的.地址,保證可以從后向前比較,他說不申請空間如何實現?
想了一會兒沒思路,他提示如何利用你求出的鏈表長度呢?我馬上有了思路:先定義兩個指針指向鏈表頭,讓指向長的鏈表指針先走一定的步數,然后兩個指針同步移動判斷。
7、 一個包含n個元素的數組,其中一個數重復超過n/2次,如何找出這個數
我說就是求中位數,然后他說如何做,我說用快速排序的partition函數,他問復雜度是多少我說O(n),他問為什么,我簡單給他說了一下復雜度的遞歸式就OK
8、 如何判斷一個鏈表存在環
我說見過他又問,如果存在環,如何確定交點,想了一會兒,沒思路,它提示說,將環斷開,我茅塞頓開,說這就是兩個相交鏈表判斷交點位置的問題了OK.
9、 如何判斷一個數是2的冪
(x + ~0)&x
暫時就想到這么些題了,其他想到再補充?偣1個小時零10分鐘左右。
【HuLu筆試面試經驗】相關文章:
中興筆試面試經驗08-23
工行筆試面試經驗08-27
無經驗會計面筆試面試08-01
云南移動面試筆試經驗07-19
某公司面試筆試經驗11-20
面試經歷體會及筆試經驗12-09
瑞穗銀行面試筆試經驗12-03
工行筆試面試經驗分享08-17
面試畢馬威的筆試經驗分享10-11
長沙銀行筆試面試經驗08-31