liveramp OA+电面

原帖地址:一亩三分地

OA都是地里的,上周一发了简历,半夜就给回复了,给了OA链接,然后周二我就给做了。很迅速又约了电面。OA面经参照地里,多搜几个基本就覆盖了。
关于6 degree看了那篇paper,但我觉得虽然那篇写的很好,还是要有点自己的想法,不能都千篇一律bi-bfs,说白了各种算法都有优缺点,还是要趁机展示一下自己的想法比较重要。BFS真的一定比DFS好吗?bi-direction一定是正确答案吗?可以多想想。

电面:
Tenzing小哥,我看linkedIn是美国小伙,可是名字怪怪的……人很好~然后还跟我一样是phd quit拿了master,而且一样曾经做CV的,科科。
后来聊project聊了好久。

然后就是面经题: kth smallest element,我随便找了一个帖子看代码,可以参考:http://comzyh.com/blog/archives/713/
我说了三种算法,1. sort array,O(nlgn),问了为啥nlgn,简单说了下merge和quick sort
2. size为K的min heap,复杂度应该是O(nlgk)吧,不知道之前从哪看了是n+klgn…刚开始照着说的,后来觉得不对劲,自己分析了一下

3. quickselect啦,复杂度问的超级细,平均是O(N),最坏是n^2,为啥呢?每一步是咋实现的?代码咋写?问的真是超级细…………所以你认为非常熟悉的算法和结论还是得好好想想,记住过程,他们真的很喜欢问复杂度相关的东西,而且问超级细,要真的搞清楚每一步,不要因为太过熟悉这个东西而忘记细节。

因为前面project聊太久,就没时间了,随便问了问给点意见,然后问了data onboarding,聊了聊,就结束了,目测还是要跪,据说他家bar很高,出一点错就不行……

之前还准备了几道第一轮电面的面经题:
1. LRU, 如何实现set get delete的O(1),想法是array->linkedlist+hashmap->双向链表,有个分析的挺好的,给个链接:http://www.cnblogs.com/dolphin0520/p/3741519.html
2. 6 degree, BFS, 数据结构,queue大怎么存,复杂度,什么的。
3. XY12,这个地里经常出现,可以搜一下,我觉得是翻X,和1,翻1是为了证逆反命题。