Hulu面试回忆
原文链接 http://bbs.yingjiesheng.com/thread-1494413-1-1.html
【Hulu面试回忆】
早有耳闻hulu面试算法巨难,所以是准备着被bs的心情去的。早上实验室有同学去面,
听了他简单描述了三个题,也不是很难,基本上想想都可以解出来了。
下午一点的面试,我习惯提早半小时到,到了房门口,等了20分钟左右,始终没人。后
来hr mm赶到,说去吃饭了,所以等了会。后来正式面试是一点十五左右才开始。
面试的是香港出生,美国读书的一个sg。感觉很像房祖名,但更健康一点。
先让我自我介绍下,说了之后,然后,他也自我介绍下,听口音比较舒服,人很nice。
但是他的名字说了几遍都没听清,没有好意思问。
三个题,都是代码题
1、两个有序链表的合并。看过这个题,考虑下边界问题,可以用O(n)时间,O(1)空间解
决。写完后,说我代码有个小bug,然后讨论后改之。问这个算法在哪种条件下不work,
想了许久,突然灵光一现,想出可能链表有环或者两个链表有可能有公共节点。他很开
心,说很久没有人能同时想出两个case了。
2、字符串A和字符串B。是否B包含了A所有的字符串,要考虑字符的个数问题,比如A:
aabb , B: abccc,就不满足条件了。这个题目跟google当年的笔试题很像,开一个256的
int[]数组做hashtable,很容易解决了。由于之前没有考虑上述的情况,他指出来了,
稍微改下,就过了
3、一个n*n迷宫,方块里可能是墙,可能是路,问怎么走出出口,求最短路径。先说思
路,然后写伪代码。很简单的宽度优先,每个方格里记录走的步数和来自于哪个方块。
很快就解决了。
第一面面试官人很nice,感觉自己也面得很不错,他也几次说我很好。
晚上听了hulu的宣讲,跟面试官聊了天,叫错了他的名字,没有一个字叫对了。-.-!!
!。要了他的名片,
第二天,hulu笔试。由于已经面试过,就不需要参加。
第三天,开始通知面试。实验室同学通知到去二面,而我没收到。
第四天,据说hulu当天要走,于是我给他们打了电话,问了情况。接电话的是另外一个
国内的面试官,说什么合适不合适之类的等等,其意思就是我被淘汰了。感觉很郁闷,
想想也算了,反正重在参与。但是,过了20分钟左右,接到hulu hr的电话,叫我三点去
面试,当时是中午一点。只能猜测是他们工作失误,忘记通知我了。。。
于是3点去面试,参加二面。是那个国内的gg面试的。
先问了下我的情况,然后问有没有参加笔试,然后说没有。然后问第一面写了几个程序
,我说三个,然后他说怪不得就不用笔试了-.-。
感觉他不怎么热情,不如第一面的面试官感觉nice。
然后开始问问题,先问了两个试卷上的题目
1)N个数,选出任意两个数求和,问所有这些可能性的和是多少。我说最简单的方法是
模拟,O(N^2),然后问有没有更简单的,想了想,计算了下所有数出现的个数是 (N-1
)/2,所以很简单,就是sum*(N-1)/2,时间复杂度是O(N)
2)问试卷最后一个题。之前听同学说过,我自己想过。A B两个有序数组,A中选一个,
B中选一个,要求和为某个指定值m,问怎么选。感觉是《编程之美》上一维数组中求两
个数和的变形,所以只要变换一下:A中的数从头往尾走,B中数从尾往前走就好;但是
这么会遗漏,如果没找到,用相同的方式,A中的数从尾往头走,B中的数从头往尾走,
看能否找到
3)问知道怎么确定有环链表。说知道。然后问,怎么确定环的起点节点。然后说没见过
。他说,浙大的很奇怪,第一个问题都会,而第二个问题都不会。然后我开始想,最简
单的用hash表保存已遍历的节点。然后他说需要常数空间。想了很久大概15分钟不会,
让他提示下。说如果两个链表有公共节点,问怎么去找这个公共节点,想了几分钟,想
出来了。只要都遍历一下得到长度的信息,利用这个信息再遍历一次,就可以找到公共
节点。
然后想到第有环的只是一个变种,只要把环断开。就成了第一个问题。然后叫我写代码
,很顺利的写完。
4)已知两个矩形的四个节点信息,然后给一个API——可以得到某个点在是否在某矩形
内,问怎么判断矩形相交。答曰,矩形相交不需要这么复杂,只要判断线段相交就行。
可能他之前没想到我会这么回答,仔细解释了下,他说可行。然后问有没有特殊情况,
我说有,一个矩形在另一个矩形内,可能线段不相交,矩形也相交了。然后答曰,这个
只要判断小矩阵的几点是否在大矩阵内就可以了
5)问一个n*n的方块内,有一条环形路径。路径上的点都是1,其他点都是0.。给路径中
的任意一个点,问这个路径所包含的面积。想了一分钟,觉得粉两步走:1)深度优先找
路径 2)宽度优先算面积 然后解释了下,说可行
最后问有没有什么问题。看得出来,他对我兴趣不大,直接问我进公司的可能性大么。
他解释了下,因为人多,大家都很优秀,然后浙大有比我表现好的,所以基本意思是我
希望不大。然后送了T恤,就回来了。
推荐阅读
- 回忆曾经看过的小说
- 童年回忆
- 我的世界同人小说《暮色齿轮》第三回|我的世界同人小说《暮色齿轮》第三回 回忆
- 2018国考外交部面试演讲不再难——只需把握好三点
- iOS面试题--基础
- 夏三两遗事·五
- java|java 常用知识点链接
- 回忆(作者(朱君淳))
- 年薪30万的Java架构师必会的springboot面试题
- linux笔记|linux 常用命令汇总(面向面试)