已經(jīng)在Facebook工作了一段時(shí)間,整個(gè)面試過(guò)程記憶還比較清楚,今天來(lái)這里分享一下我面試 facebook 的經(jīng)驗(yàn)。
我申請(qǐng)的職位是software engineer, 投完簡(jiǎn)歷后不久就收到了recruiter的通知,預(yù)約了電面。
電面
電面很簡(jiǎn)單,只有兩個(gè)簡(jiǎn)單的問(wèn)題,很容易解決。但可能是因?yàn)檫@是我第一次電話面試,所以我當(dāng)時(shí)電面還是有些緊張。電面剛開(kāi)始時(shí)緊張到面試官都在跟我說(shuō)Don't worry,后來(lái)想想沒(méi)什么可擔(dān)憂(yōu)的,被拒還可以再投嘛,心情也就慢慢平靜了下來(lái)。
1.給定一個(gè)字符串,判斷其是否為一個(gè)回文串。只包含字母和數(shù)字,忽略大小寫(xiě)。
LintCode原題鏈接:http://www.lintcode.com/zh-cn/problem/valid-palindrome/
Solution鏈接:http://www.jiuzhang.com/solutions/valid-palindrome/
2.代碼庫(kù)的版本號(hào)是從 1 到n的整數(shù)。某一天,有人提交了錯(cuò)誤版本的代碼,因此造成自身及之后版本的代碼在單元測(cè)試中均出錯(cuò)。請(qǐng)找出第一個(gè)錯(cuò)誤的版本號(hào)。
你可以通過(guò) isBadVersion 的接口來(lái)判斷版本號(hào) version 是否在單元測(cè)試中出錯(cuò)
LintCode原題鏈接:http://www.lintcode.com/zh-cn/problem/first-bad-version/
Solution鏈接:http://www.jiuzhang.com/solutions/first-bad-version/
Onsite interview
電面完第二天,recruiter就給我發(fā)了一封郵件,說(shuō)我通過(guò)了電面,可以去onsite了。
onsite一共進(jìn)行了四輪,四輪的面試官都很nice,沒(méi)有感覺(jué)有距離感的?;旧纤妮喢嬖嚩际橇牧肆闹暗捻?xiàng)目經(jīng)驗(yàn)和幾個(gè)很常見(jiàn)的面試問(wèn)題。除此之外偶爾還聊了點(diǎn)別的,我挺喜歡這樣的工作氛圍,當(dāng)時(shí)很期待自己面試能通過(guò)和他們一起工作。
每一輪都會(huì)進(jìn)行coding,這里就放我記得還比較清楚的三道。
1.序列化是將數(shù)據(jù)結(jié)構(gòu)或?qū)ο筠D(zhuǎn)換為比特序列,以便將其存儲(chǔ)在文件或內(nèi)存緩沖區(qū)中,或在網(wǎng)絡(luò)連接鏈路上傳輸,以便在同一個(gè)或另一個(gè)計(jì)算機(jī)環(huán)境中重建后的過(guò)程。
設(shè)計(jì)一個(gè)序列化和反序列化的二進(jìn)制樹(shù)算法。沒(méi)有限制你的序列化/反序列化算法應(yīng)該工作。你只需要確保一個(gè)二叉樹(shù)可以被序列化為一個(gè)字符串,這個(gè)字符串可以反序列化到原來(lái)的樹(shù)結(jié)構(gòu)。
LintCode原題鏈接:http://www.lintcode.com/zh-cn/problem/binary-tree-serialization/
Solution鏈接:http://www.jiuzhang.com/solutions/binary-tree-serialization/
2.給定一個(gè)文檔(Unix-style)的完全路徑,請(qǐng)進(jìn)行路徑簡(jiǎn)化。
LintCode原題鏈接:http://www.lintcode.com/zh-cn/problem/simplify-path/
Solution鏈接:http://www.jiuzhang.com/solutions/simplify-path/
3.LintCode : Sort Colors
LintCode原題鏈接:http://www.lintcode.com/zh-cn/problem/sort-colors/
Solutione鏈接:http://www.jiuzhang.com/solutions/sort-colors/
在最后一輪,我遇到了一個(gè)難題。面試官向我提供了一些提示后我做了出來(lái)。當(dāng)時(shí)等通知的時(shí)候還害怕因?yàn)檫@個(gè)過(guò)不了面試,所以后來(lái)收到通知拿到offer后真的是挺驚喜也很開(kāi)心的。