由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - Yahoo、 Google、LinkedIn电面题目 & 面试经验求助
相关主题
攒人品,Amazon 二面面经合并两个排序好的链表, 优解?
M onsiteleetcode上这个链表节点的定义是什么意思?ListNode(int x) : val(x), next(NULL) {}
报个A家的面经c++算法题一问
G, M, Z面筋用Java面试的大牛们
google 电面 software engr in testleetcode 上单链表转BST那道题求指导
电面犯二了怎么理解递归解决的“swap every two elements in a linked list”?
分享几个公司的面试题leetcode上的sorted list to BST
报一下亚马逊面经,大量BQjava问题
相关话题的讨论汇总
话题: yahoo话题: 面试话题: 题目话题: linkedin话题: 面试官
进入JobHunting版参与讨论
1 (共1页)
x****u
发帖数: 81
1
大家好,最近忙于找工作,听人介绍发现了这个版面,看了各位大大的帖子受益匪浅,
于是也来分享下自己电面的题目。几次电面发挥得很不理想,我自己总结了一些教训,
也希望大家指点迷津,给我点建议,先行谢过!
// 题目
1. Yahoo
Given a integer array, how to find the median?
Running median. Numbers keep coming in one after another, how to get the
median?
2. Google
(1)
struct A {struct A *b;}
struct A * d = 0;
void S(struct *f) {f->b = d; d=f;}
What is function S doing? Can you name this function?
What if we need S to work with any type of pointer?
Does your solution work in multi-threaded programs? Why? How to modify it?
(2) The output of a multi-threaded program given the code of threads.
(这题不记得具体了,大概是需要了解如果done是一个初始为0的全局变量,则while(!
done){}这个循环会被编译器优化掉。)
3. LinkedIn
(1) Given two tree nodes, find the lowest common ancestor.
(2) Implement two member functions of class Intervals: addInterval(int from,
int to) and getTotalCoverage()
(后面比较长,详细写了面试过程和自己电面的问题,为的是向大家寻求建议,只关心
题目的朋友可以略过了)
// 经历
1. Yahoo
面试机会来源:逛Yahoo招聘页面某个岗位描述下面有个在线做题的链接,很简单几道
题做完留下了自己的网站地址和resume地址。大概一周后HR联系我。
面试过程:45分钟,上来直接collabedit给题,原本的题目有点长,我看完还没仔细想
清楚怕冷场就开始回答了,running median我开始说构建一个BST,然后讲着讲着发现
BST插入容易要找index就难了,还要考虑平衡问题。这时候面试官说有非常多的数字,
不能全存下来。我迷糊了,想了一个错误的方法,存下median和median附近的数字,然
后加下一个数字之后median肯定在这些数字中。面试官说"i didn't get it",我就拿
test case去一步步推给他看(刚好题目的test case比较平衡,median不会偏出window
),他仍然反复说"i didn't get it"。我心里还在暗自鄙视他。浪费了很多时间之后
,有个旁听的面试官告诉我,如果把-200到-100塞进去,再塞100到200,你的方法还管
用吗?我这才意识到错误。然后又思考了半天,也没有想到不存下全部数字的方法。这
时那个主面试官好像已经失去了耐心,基本不说话了。旁听面试官说让我继续刚才BST
的思路,我又慢慢想到了用两个heap去存,然后保持平衡。最后他问我用BST和两个
heap的时间复杂度。已经过了30多分钟,一行代码也没有写,旁听面试官问我还有没有
问题,我随便问了下大家就散伙了。
2. Google
面试机会来源:内推。收到自动邮件的当天收到hr email,第二天电话约电面时间。
面试过程:面试官简单介绍了下自己哪个team,然后就扔题目。我看了一遍代码,没有
看出想干什么,只是把字面上的代码功能描述了一遍,还跟他说这种在函数里改全局变
量的行为不好。他让我一句句解释这些代码在干什么,我回答说S把输入指针指向的数
据的b指针指向了空,然后把输入指针赋值给了全局变量d。他好像有点无奈,写了一个
例子连续调用了S三次,我才看出来这是一个没有data域的链表头插。后面一问要让这
个链表可以插入任意数据的指针,问我怎么改。我开始在他原来的代码上改,没改对,
然后他指出了错误。我头已糊了,把他的代码全删掉然后用ListNode{void* data;
ListNode*next}重写了一遍。写完他让我简化,我没有理解他想怎么简化,脑袋里又犯
迷糊,觉得可能是我不应该加那个void* data, 然后想了半天也不知道怎么弄,告诉他
我不知道从哪个方面简化,他说没关系我们move on。事后想想,我当时用了一个dummy
node来挂head,可能他想简化的是这里。第一题后面多线程的部分他也没有深问,我
加了下pthread_mutex_lock在指针操作的部分。到了第二题又是个多线程的,题目很明
显是在考那个while循环的优化,我很实诚的告诉他我不懂compiler优化的具体细节,
但这个题很明显就是个trap,肯定得回答看起来比较不可能的选项,他笑了起来,我也
慢慢放松了,但时间已经30分了,他不准备继续给题了,让我问了几个问题就散伙了。
3. LinkedIn
面试机会来源:LinkedIn上去年有个HR联系过我,让我快毕业了找他。
面试过程:国人大哥。总共一个小时,先相互介绍了下,然后两道题,最后问问题。感
觉非常轻松,题目也都是见过的。感觉他很怕我回答不上来,我写代码中途停下来解释
思路的时候他有点担心我不会写,会提示我,并主动简化问题。比如common ancestor
本来参数只有两个node,我说如果有根就会比较简单,我们可以先去找根,他就立刻说
没关系我们加上一个参数是根节点指针,你继续写。总之非常感谢这位大哥,让我总算
有了一个二面的机会!
// 教训
经过前两次的失败我给自己写下了好几个tips:
1. 想清楚了再回答。我有个问题是没办法边说边想,一说起来就没办法继续推进思路
了。虽然鼓励think out loud,但是思考个两三分钟是肯定没问题的。
2. 多问问题,input有无限制条件?正数?重复?大小范围? 复杂度有没有要求?
3. 从构造test cases开始想问题,一来可以给面试官确认自己理解了问题,二来可以
给自己带来思路。
4. 电面不要对着题干想,多用笔打草稿,尽量在协作文档上。没办法乱画的话自己在
纸上随便画几笔可以省下很多大脑寄存器。
// 问题 ==求指导==
我感觉在电面时自己的思路完全打不开,扯项目还行,就是进入不到那种高速解题的状
态。平时leetcode上困难的题目自己也能解出来很多,但面试我估计新题的话medium难
度都够呛。从上面的面试过程也能看出来,我给面试官的印象完全是榆木疙瘩型的。这
个除了紧张也有心态调整的问题。不知道大家有没有类似的经验,有没有什么可以克服
的方法?
// FYI 附上一些个人背景
国内硕士毕业,腾讯工作3年,现在在加拿大Concordia University读master,想找美
国的工作。
大部分公司都不能等我h1b,所以主要精力目前都集中类似FLAG这些大公司。这里也附
上我的简历,希望碰到有内推机会或者知道哪里收留我这种情况的大大能不吝相助,有
任何问题也可以通过其中的邮箱与我联系。
简历: http://xingwu.me/downloads/xingwu-resume.pdf
blog: http://xingwu.me/
m*******n
发帖数: 113
2
不厚道的说一声,你这个水平还是先练练再说吧,不然吃亏太多再醒悟就有些晚了。
n****a
发帖数: 174
3
Could you please tell me where is the online challenge of Yahoo?
x****u
发帖数: 81
4

感谢回复,和有些长期准备的人相比练的是不算多,从开始准备到现在不过两月,但是
leetcode上的hard题做过2遍,其他难度题也练过大部分。我的问题是面试时很容易卡
住,发挥不出平时思路的十分之一。我目前的感觉是继续刷题不能解决我的问题。

【在 m*******n 的大作中提到】
: 不厚道的说一声,你这个水平还是先练练再说吧,不然吃亏太多再醒悟就有些晚了。
x****u
发帖数: 81
5

我当时只看到个别岗位有,在职位描述最后有个链接,指向的是hackerrank.com

【在 n****a 的大作中提到】
: Could you please tell me where is the online challenge of Yahoo?
y*****e
发帖数: 712
6
lz, LCA不给root的情况的找root是不是得有parent pointer啊?
x****u
发帖数: 81
7

是的,有parent的。

【在 y*****e 的大作中提到】
: lz, LCA不给root的情况的找root是不是得有parent pointer啊?
f*****t
发帖数: 34
8
建议看一些引导算法思路的书籍,比如programming pearls之类的。
y*****e
发帖数: 712
9
看了lz的简历觉得很强,名校科班又在腾讯工作过,感觉基本功应该很扎实。。
面试容易紧张的话可以找个朋友mock一下再面,或者先找local的小公司练手。不要轻
易去面,这些公司都有小黑屋,进去了就得蹲一年。
x****u
发帖数: 81
10

谢谢,能有一个系统性的思维方式确实很有帮助。有朋友推荐我看Elements of
Programming Interviews,我也看了有一大半了。

【在 f*****t 的大作中提到】
: 建议看一些引导算法思路的书籍,比如programming pearls之类的。
x****u
发帖数: 81
11

谢谢你的建议,mock是比较有用,我找同学mock过一次,当时表现也不怎么好。同学也
是让我把面试推一推。可是我没有opt,要申h1b的话再推怕来不及了,只能硬上。
工作经验的话,感觉对付设计题比较有用一点。对解这些题帮助不大,只是写代码相对
熟练。

【在 y*****e 的大作中提到】
: 看了lz的简历觉得很强,名校科班又在腾讯工作过,感觉基本功应该很扎实。。
: 面试容易紧张的话可以找个朋友mock一下再面,或者先找local的小公司练手。不要轻
: 易去面,这些公司都有小黑屋,进去了就得蹲一年。

y*********8
发帖数: 387
12
看楼主的blog 感觉挺厉害的,应该就是面试经验的问题吧,找小公司先练练手
x****u
发帖数: 81
13

谢谢,是个好主意,不过美国的小公司听到我h1b的情况就退却了,要么觉得我不够
senior,要么是等不起。找过加拿大一个本地的做mobile ads的公司,面了两次都只问
了下经验和项目什么的,扯了下蛋就过了,啥代码都没写。

【在 y*********8 的大作中提到】
: 看楼主的blog 感觉挺厉害的,应该就是面试经验的问题吧,找小公司先练练手
1 (共1页)
进入JobHunting版参与讨论
相关主题
java问题google 电面 software engr in test
一个GOOG的二叉树面试题电面犯二了
问个老的算法题 (小尾羊 能进来看一下么)分享几个公司的面试题
几个多次被问到的c++问题请教报一下亚马逊面经,大量BQ
攒人品,Amazon 二面面经合并两个排序好的链表, 优解?
M onsiteleetcode上这个链表节点的定义是什么意思?ListNode(int x) : val(x), next(NULL) {}
报个A家的面经c++算法题一问
G, M, Z面筋用Java面试的大牛们
相关话题的讨论汇总
话题: yahoo话题: 面试话题: 题目话题: linkedin话题: 面试官