職位:職員(技術類)
地點:北京
公司:北京小米科技有限責任公司
小米這個靠手機起家的公司,現在已經把企業做的越來越紅火了。像我這種小員工是非常向往小米這樣的大企業的。所以帶著很忐忑的心理,往小米公司的郵箱投了應聘簡歷。萬萬沒想到的是我有了一次面試的機會,第二天就帶著緊張的心情去小米公司面試了。
剛進公司去了人事部,就有一個主管招聘的美女姐姐過來給了我一份試題,一面是個人信息另一面是十幾道試題,除最后兩道是專業一點的問題外別的都是跟客服有關的自由發揮題目,內容我就不一一說了。面試的美女很漂亮很溫柔,禮儀也很到位很專業是個人才,這點必須贊一個。面試的時候也沒有那么嚴肅,我回答問題的時候每說一句話她都“嗯”表示在聽,看出了我很緊張,她也在努力幫我緩解,長這么大沒面試過幾次,而且一見美女就算不面試也會緊張的…呵呵,開玩笑。
和面試官先隨便聊了一下背景,讓我寫一個有序鏈表的歸并。在一面前,先被領著去參加了機試(果然還是逃不了),20分鐘一道題,類似acm,把題目提交到oj上自動判分。機試沒有太大難度,一道冒泡排序的題,十幾分鐘慢悠悠寫完,但是坑爹的時候到了,提交后提示編譯錯誤,看了錯誤日志,iostream未找到?仔細檢查了代碼發現沒有問題啊,然后問旁邊的工作人員,這個不是寫的cpp么,提交后為何顯示選擇的語言是c?面試官看了一眼:啊,只能用C…只能用C…那你把CPP作為選項干啥…后來跟工作人員協商,直接把代碼copy到記事本里,人工判分,然后出去等結果。幾分鐘后順利通過機試,準備一面。
一進面試那間屋子就嚇了我一跳,以前面試我這個職位的都是一對一,剛進屋就看見全是人,我都不知道該坐哪了,我的左邊右邊分別是來面試的同學,對面坐著我的面試官,幾個人幾乎是緊挨著..我記得我面試到一半的時候,旁邊的面試官對一個接受面試的同學說:我覺得你技術還是不到家,你可以回去了,這時候壓力山大啊,因為自己剛剛被一道題卡住了==
最后我透露一下面試的題目:
一面
1.一個map中存有類似如下的數據:
key value
"a" "afasfwaeqwfwa(b)eqwgewgrqgq"
"b" "frgwegqgg(c)fqf(d)dqf"
"c" "fqfgrfwgrw"
"d" "gwrgwergqwg"
現在寫一個函數,將"b"的value中的“(c)”和“(d)”分別用"c”和"d"的value替換,然后將"a"的value中的“(b)”用"b"的value替換。注:上面的map只是一個例子而己,實際情況可能更復雜。
二面
1.給2個無序數組ab
對于任意一個b在a中找出與其最接近的值
使用二分或者三分二分需要判斷多種情況
2.給出一個二叉樹包含數據按照中序遍歷的順序找出第k個元素
解:
⑴中序遍歷直接找出(遞歸非遞歸)可優化
⑵使用二叉排序樹結點遍歷的順序進行編號
⑶面試官提醒可以通過結點的數據域來做可以到O(logn)
3.討論了些c的知識
禁止一個類被繼承使用虛繼承跟友元可以完成
用c實現多態
三面
1.鏈表的各種經典問題判斷環相交結點等
2.const的各種用法
3.一個不規則多邊形判斷一個點是在多邊形內還是外
4.操作系統線程狀態圖線程進程區別虛擬內存cpu調度cache替換算法等
5.計算機網絡OSITCP/IP三次握手四次握手問的很細四次握手為什么是四次不是三次三次為什么不是兩次
希望上面的內容能給各位看官一些幫助。