facebook 电面# JobHunting - 待字闺中
y*l
1 楼
先上题:sum of k largest numbers in an unsorted array.
过程:
面试官迟到8分钟。先让我背景介绍,期间不断追问专业背景,研究经历,工作经历,
所以大概用了20分钟回答。然后interviewer说要面的第一题是:sum of k, 当时一听
就有点蒙,因为大约还剩15分钟的时间,难道要面2个题?就追问了一下,他说是。
解题过程:我先说了最自然的方法:sort和时间复杂度O(nlogn),面试官不满意,说
array可能很大;然后我说了heap和O(nlogk), 面试官追问如何实现,解释了用最小堆
,比较top item。面试官还是不满意,说k可能很大。然后我说用binary search 和
partition, 交换k largest numbers到数组的一端,面试官还是不满意。看他给的
example中数只有几个数,就问他是否number有范围,他回答实际不一定,不过这题可
以假定[0-9]。然后我说直接用hash table,他这才满意。之后是写code。写完后给他
说自己要run test cases。检查过程中,他说函数主体pretty good,就是函数开始有
毛病。看了几遍,才发现判断输入参数为空时,把个“==”写成“!=”了,赶紧改了
过来。整个解题过程大概花了15分钟左右。
然后面试官说时间到了,要我问问题。问了facebook的午餐和他是否觉得facebook工作
excited。
然后,就没有然后了。两天后收到recruiter的拒信
对这次facebook的面试经历真是非常confusing。过来的同学能帮忙分析分析吗?被拒
是因为没做第二道题,还是那个typo导致了非bug-free?
过程:
面试官迟到8分钟。先让我背景介绍,期间不断追问专业背景,研究经历,工作经历,
所以大概用了20分钟回答。然后interviewer说要面的第一题是:sum of k, 当时一听
就有点蒙,因为大约还剩15分钟的时间,难道要面2个题?就追问了一下,他说是。
解题过程:我先说了最自然的方法:sort和时间复杂度O(nlogn),面试官不满意,说
array可能很大;然后我说了heap和O(nlogk), 面试官追问如何实现,解释了用最小堆
,比较top item。面试官还是不满意,说k可能很大。然后我说用binary search 和
partition, 交换k largest numbers到数组的一端,面试官还是不满意。看他给的
example中数只有几个数,就问他是否number有范围,他回答实际不一定,不过这题可
以假定[0-9]。然后我说直接用hash table,他这才满意。之后是写code。写完后给他
说自己要run test cases。检查过程中,他说函数主体pretty good,就是函数开始有
毛病。看了几遍,才发现判断输入参数为空时,把个“==”写成“!=”了,赶紧改了
过来。整个解题过程大概花了15分钟左右。
然后面试官说时间到了,要我问问题。问了facebook的午餐和他是否觉得facebook工作
excited。
然后,就没有然后了。两天后收到recruiter的拒信
对这次facebook的面试经历真是非常confusing。过来的同学能帮忙分析分析吗?被拒
是因为没做第二道题,还是那个typo导致了非bug-free?