l****i 发帖数: 2772 | 1 CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。
第一轮,2个人。每个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码
写到8个方向递归的时候,被打断,说知道我后面会怎么写了,让我先分析这个程度的
复杂度,他们有其他问题要问。最后15分钟,问了一大堆behavior,关于team work的
一类的问题,有矛盾怎么解决,team里有人不干活,team里有人和你不同意见等等,要
求给出一些以前经历的例子。
第二轮,老美白人。开始问了很多object oriented的问题。abstract class,
interface,什么情况下如何选择,inheritance VS composition等等。然后一个
coding,按行统计词频,不难,hashtable解决。 写code的中间,问了很多次复杂度,
基本上我写一行code,他会问一下这一行的复杂度。然后给了一个OOD,一个tree的结
构,计算表达式。然后又出了一题OOD,题目还没解释完,外面的第3轮人就敲门了。
第三轮,南美或者欧洲女。这一轮我很崩溃。第一轮,按层遍历二叉树。直接问我,你
是不是见过这题,我说是。我写了用queue的BFS。此女第一个问题,问“Queue q =
new Linkedlist()”,应该是queue,你为什么new一个linkedlist,我回答“java里
queue是interface”。她说这样啊,她不知道这个。她自己在纸上笔画了半天,说,好
像是的,linkedlist可以代表queue的属性。我感觉很崩溃。让我用例子走一遍我的
code,然后她回答,看着没问题。第二题对我说,给你1-N个数,其中missing了一个数
,怎么找出来。又问,你是不是见过这题,我说这类题目比较经典,她说好,那你开始
写code吧。我说有很多种方法解决这个问题。我说可以移位到相应的index,也可以用
XOR。我写了XOR的代码,她仔细看了有2分钟,说了一句大概这样的话,“I never
know XOR can be used in this way, your solution is very creative”。我纳闷了
,XOR解决这种问题,不是很经典的么... 问我复杂度,我说O(N). 她又说,我非常喜
欢你的方法,她第一次知道XOR可以解决这样的问题。然后时间到了,她出门,走之前
对我说,你的方法很好,但是不是最快的方法。。。。我无语。。。难道又悲剧了。。。
第四轮,我估计应该是个国人manager,英语说的很不错。说他是来问data structure
的。上来让我说出,我所知道的data structure。然后他说,他知道想问什么了。让我
实现LRU。需要写详细的代码,包括构造函数都要。我说可以用doubly linkedlist+
hashmap实现。他说好,要求我写成generic的class。我说java里用K V T一类的,比如
这里hashmap可以用。他说,其实LRU实现不是用的hashmap,用的是hashset。我
当时觉得,hashset做不到O(1),可是又不知道是不是应该反驳一下。我就回答,java
里有个linkedhashmap,专门用来解决LRU的。他接着说,你就用hashmap写吧。我说我
从来没写过一类的generic的class,怕写的不好,他同意我就按普通class写。花
了一些时间,把code写完。他说有个小bug,我看了一下,很快发现忘了修改previous
的几个link。迅速改完,他又看了一遍,说现在的code看着不错。问我复杂度,我说这
个LRU是O(1)。又具体问了问,如何测试这个code。他拿手机拍照,结束。最后对我
说他也不清楚,我是来面什么职位的。他需要再问问HR。
面完当天,就觉得估计要悲剧。第一轮code没完全写完。第3轮O(n)居然还不是最优
解。很郁闷的走回酒店,突然大彻大悟,那个第三轮女,难道,难道她说的1 to N个数
,表示输入是sorted?她从头到尾,没说过sorted这个词啊。
总结教训
1. A家onsite,每轮只给45分钟,有时候面试官迟到5分钟,再扯点别的聊聊,时间很
紧。我的第一轮,面试官迟到了几分钟,加上讨论,白板写code的时间就很紧张,最后
又说要留15分钟问behavior。
2. 就算遇到的题目,都是面经,也一定要让面试官先给一个例子。我的第3轮找
missing的数,感觉就很冤,我现在猜测面试官的意思是,sorted的数,miss了一个。
这个二分就搞定了啊。就算我再笨,如果知道是sorted,从头到尾过一遍,也知道哪里
miss了啊,也不至于用XOR去解决啊。
从1月开始投简历,到现在,3个月面试了大概12家公司,拿了6个onsite,全部悲剧了.
.....求版上大牛refer....跪谢... |
L****Y 发帖数: 355 | 2 bless
CS的PHD找工作也没有什么优势啊..
【在 l****i 的大作中提到】 : CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。 : 第一轮,2个人。每个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码 : 写到8个方向递归的时候,被打断,说知道我后面会怎么写了,让我先分析这个程度的 : 复杂度,他们有其他问题要问。最后15分钟,问了一大堆behavior,关于team work的 : 一类的问题,有矛盾怎么解决,team里有人不干活,team里有人和你不同意见等等,要 : 求给出一些以前经历的例子。 : 第二轮,老美白人。开始问了很多object oriented的问题。abstract class, : interface,什么情况下如何选择,inheritance VS composition等等。然后一个 : coding,按行统计词频,不难,hashtable解决。 写code的中间,问了很多次复杂度, : 基本上我写一行code,他会问一下这一行的复杂度。然后给了一个OOD,一个tree的结
|
p*****p 发帖数: 379 | 3 第三轮的XOR怎么弄?给你0,1,3,4你怎么把2找出来?
二分更不对了吧
【在 l****i 的大作中提到】 : CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。 : 第一轮,2个人。每个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码 : 写到8个方向递归的时候,被打断,说知道我后面会怎么写了,让我先分析这个程度的 : 复杂度,他们有其他问题要问。最后15分钟,问了一大堆behavior,关于team work的 : 一类的问题,有矛盾怎么解决,team里有人不干活,team里有人和你不同意见等等,要 : 求给出一些以前经历的例子。 : 第二轮,老美白人。开始问了很多object oriented的问题。abstract class, : interface,什么情况下如何选择,inheritance VS composition等等。然后一个 : coding,按行统计词频,不难,hashtable解决。 写code的中间,问了很多次复杂度, : 基本上我写一行code,他会问一下这一行的复杂度。然后给了一个OOD,一个tree的结
|
l****i 发帖数: 2772 | 4 0^1^3^4^0^1^2^3^4=2
如果输入是sorted,每次比较输入数组里中间那个数,就知道缺的数是在左边,还是在
右边。
【在 p*****p 的大作中提到】 : 第三轮的XOR怎么弄?给你0,1,3,4你怎么把2找出来? : 二分更不对了吧
|
p*****p 发帖数: 379 | 5 了解了,是比较index吧?
【在 l****i 的大作中提到】 : 0^1^3^4^0^1^2^3^4=2 : 如果输入是sorted,每次比较输入数组里中间那个数,就知道缺的数是在左边,还是在 : 右边。
|
d*******y 发帖数: 27 | 6 每个元素是unsigned并且取值范围一定小于数组的长度吗?
【在 l****i 的大作中提到】 : 0^1^3^4^0^1^2^3^4=2 : 如果输入是sorted,每次比较输入数组里中间那个数,就知道缺的数是在左边,还是在 : 右边。
|
e********5 发帖数: 422 | 7 我去amazon也是问的boggle题,写错了,改了半天才对;也是一个design题,做的一般
;我还不是cs的,很但最后拿到offer了。感觉你这面试很奇怪啊 没有HR么?没有你
hiring manager么?
有时候做题要多问问,做一堆数找啥的题目,主动问是不是sorted都是很自然的。估计
你一听题,就赶紧埋头写,然后面试官问你是不是见过,你表现得又有点awkward。让
人感觉到你太紧张了,交流不畅。我觉得你6个onsite全悲剧,是不是也有这方面原因
。去面试不是去光被人检查的。interview嘛,双方看对方合不合适,自信一点,机会
会来的。
【在 l****i 的大作中提到】 : CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。 : 第一轮,2个人。每个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码 : 写到8个方向递归的时候,被打断,说知道我后面会怎么写了,让我先分析这个程度的 : 复杂度,他们有其他问题要问。最后15分钟,问了一大堆behavior,关于team work的 : 一类的问题,有矛盾怎么解决,team里有人不干活,team里有人和你不同意见等等,要 : 求给出一些以前经历的例子。 : 第二轮,老美白人。开始问了很多object oriented的问题。abstract class, : interface,什么情况下如何选择,inheritance VS composition等等。然后一个 : coding,按行统计词频,不难,hashtable解决。 写code的中间,问了很多次复杂度, : 基本上我写一行code,他会问一下这一行的复杂度。然后给了一个OOD,一个tree的结
|
k*******2 发帖数: 84 | 8 说的很实在。我觉得lz的技术已经很不错了啊。面试非技术的东西我也很困惑,不知道
要怎么提升才好,比如交流啥的,真的很重要。我这一块不怎么样,尤其有时候遇到
tough的,aggressive的面试官,或者不会的题,很容易紧张。。
【在 e********5 的大作中提到】 : 我去amazon也是问的boggle题,写错了,改了半天才对;也是一个design题,做的一般 : ;我还不是cs的,很但最后拿到offer了。感觉你这面试很奇怪啊 没有HR么?没有你 : hiring manager么? : 有时候做题要多问问,做一堆数找啥的题目,主动问是不是sorted都是很自然的。估计 : 你一听题,就赶紧埋头写,然后面试官问你是不是见过,你表现得又有点awkward。让 : 人感觉到你太紧张了,交流不畅。我觉得你6个onsite全悲剧,是不是也有这方面原因 : 。去面试不是去光被人检查的。interview嘛,双方看对方合不合适,自信一点,机会 : 会来的。
|
h****n 发帖数: 1093 | 9 第三轮那人期望你用1到N用求和公式减去实际的和
CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。第一轮,2个人。每
个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码写到8个方向递归的.
.......
【在 l****i 的大作中提到】 : CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。 : 第一轮,2个人。每个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码 : 写到8个方向递归的时候,被打断,说知道我后面会怎么写了,让我先分析这个程度的 : 复杂度,他们有其他问题要问。最后15分钟,问了一大堆behavior,关于team work的 : 一类的问题,有矛盾怎么解决,team里有人不干活,team里有人和你不同意见等等,要 : 求给出一些以前经历的例子。 : 第二轮,老美白人。开始问了很多object oriented的问题。abstract class, : interface,什么情况下如何选择,inheritance VS composition等等。然后一个 : coding,按行统计词频,不难,hashtable解决。 写code的中间,问了很多次复杂度, : 基本上我写一行code,他会问一下这一行的复杂度。然后给了一个OOD,一个tree的结
|
r*******e 发帖数: 7583 | 10 恩,除了技术还是有一些技巧的
例如那个找missing number的题,不要一上来就XOR
我觉得面试官不知道XOR很正常,基本上也是属于很tricky的东西,不会有很多加分
不要弄巧成拙,反而给面试官留下可以怀疑的地方
代码
度的
work的
,要
度,
的结
【在 e********5 的大作中提到】 : 我去amazon也是问的boggle题,写错了,改了半天才对;也是一个design题,做的一般 : ;我还不是cs的,很但最后拿到offer了。感觉你这面试很奇怪啊 没有HR么?没有你 : hiring manager么? : 有时候做题要多问问,做一堆数找啥的题目,主动问是不是sorted都是很自然的。估计 : 你一听题,就赶紧埋头写,然后面试官问你是不是见过,你表现得又有点awkward。让 : 人感觉到你太紧张了,交流不畅。我觉得你6个onsite全悲剧,是不是也有这方面原因 : 。去面试不是去光被人检查的。interview嘛,双方看对方合不合适,自信一点,机会 : 会来的。
|
|
|
l****i 发帖数: 2772 | 11 求和有可能溢出
的.
【在 h****n 的大作中提到】 : 第三轮那人期望你用1到N用求和公式减去实际的和 : : CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。第一轮,2个人。每 : 个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码写到8个方向递归的. : .......
|
h****n 发帖数: 1093 | 12 当然有可能溢出,我只是觉得她应该就是期望这个答案,求和法也的确是这个题的经典
答案。。看她水平也一般,java都搞不熟,没准她就觉得这个trick很能考察你smart与
否。。
【在 l****i 的大作中提到】 : 求和有可能溢出 : : 的.
|
s***y 发帖数: 203 | 13 bless.
那个tree结构求表达式值是啥题?我觉得那个1-n的题,他可能期待让你问他是不是
sorted的。 |
p*******4 发帖数: 45 | 14 Bless 楼主早日找到满意的offe。。
amazon是不是不会问底层知识 以及数据库方面的知识?? |
w****a 发帖数: 186 | 15 面试时候更看重的是解决问题的能力,而不仅仅是代码的正确性、高效、有技巧。好的
面试题往往是看起来很难,实际上是有隐藏的可以简化问题的地方,那么在问道这些题
目的时候,可以要先确认一下问题有哪些假设、有哪些约束条件,跟你理解的是否一致
。这个过程可以确保不做无用功,也是一个预热的过程。如果能想到既正确又高效的方
案,当然更好;如果没有,可以从简单的方案开始,同时明确的说清楚这种方案有什么
好处、有什么问题,然后可以问问面试的人的意见,再慢慢改进。
正常的面试(不那是刁难人的那种),都像是未来的同事问你一个比较tricky的问题,看
你怎么解决,这样来预测如果招了你,将来是否能放心把项目交给你干,你是否能独挡
一面、考虑的是否周全、能否按时按质完成、和大家合作怎么样。
刚读完博士毕业的时候,往往觉得自己能搞出很牛的方法,但在公司里面实际上不总是
需要最牛的方法,而更多的是对某个具体问题的最好的方法,甚至更偏向从简单的方法
开始。
【在 l****i 的大作中提到】 : CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。 : 第一轮,2个人。每个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码 : 写到8个方向递归的时候,被打断,说知道我后面会怎么写了,让我先分析这个程度的 : 复杂度,他们有其他问题要问。最后15分钟,问了一大堆behavior,关于team work的 : 一类的问题,有矛盾怎么解决,team里有人不干活,team里有人和你不同意见等等,要 : 求给出一些以前经历的例子。 : 第二轮,老美白人。开始问了很多object oriented的问题。abstract class, : interface,什么情况下如何选择,inheritance VS composition等等。然后一个 : coding,按行统计词频,不难,hashtable解决。 写code的中间,问了很多次复杂度, : 基本上我写一行code,他会问一下这一行的复杂度。然后给了一个OOD,一个tree的结
|
b*****n 发帖数: 618 | 16 顶ls,感觉lz水平没问题,也许需要在面试技巧上总结一下 |
c********t 发帖数: 5706 | 17 我觉得也是。看她水平一般,不懂xor,肯定认为sum是最优解法。lz有点儿冤,解释全
一些就好了。
第一轮是面试官没让lz继续写下去,应该不是问题。
的.
【在 h****n 的大作中提到】 : 第三轮那人期望你用1到N用求和公式减去实际的和 : : CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。第一轮,2个人。每 : 个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码写到8个方向递归的. : .......
|
P**********r 发帖数: 755 | 18 您这面的都上十大了。。也太苦逼了吧
继续给您bless。。。 |
d*******g 发帖数: 1978 | 19 楼主根本就是明珠暗投啊
别去A,又累又没钱,前途也不行。 |
p*******4 发帖数: 45 | 20 楼主能谈一谈OOAD 问了啥吗?
【在 l****i 的大作中提到】 : CS fresh PhD. 西雅图,已经接到HR电话,悲剧,攒RP,发面经。 : 第一轮,2个人。每个人先介绍了几分钟。给题,boggle,先让我分析怎么解决。代码 : 写到8个方向递归的时候,被打断,说知道我后面会怎么写了,让我先分析这个程度的 : 复杂度,他们有其他问题要问。最后15分钟,问了一大堆behavior,关于team work的 : 一类的问题,有矛盾怎么解决,team里有人不干活,team里有人和你不同意见等等,要 : 求给出一些以前经历的例子。 : 第二轮,老美白人。开始问了很多object oriented的问题。abstract class, : interface,什么情况下如何选择,inheritance VS composition等等。然后一个 : coding,按行统计词频,不难,hashtable解决。 写code的中间,问了很多次复杂度, : 基本上我写一行code,他会问一下这一行的复杂度。然后给了一个OOD,一个tree的结
|
P*******b 发帖数: 1001 | 21 面试看基本功还是可以看到一些,但是要看这种能力还是挺玄的。
【在 w****a 的大作中提到】 : 面试时候更看重的是解决问题的能力,而不仅仅是代码的正确性、高效、有技巧。好的 : 面试题往往是看起来很难,实际上是有隐藏的可以简化问题的地方,那么在问道这些题 : 目的时候,可以要先确认一下问题有哪些假设、有哪些约束条件,跟你理解的是否一致 : 。这个过程可以确保不做无用功,也是一个预热的过程。如果能想到既正确又高效的方 : 案,当然更好;如果没有,可以从简单的方案开始,同时明确的说清楚这种方案有什么 : 好处、有什么问题,然后可以问问面试的人的意见,再慢慢改进。 : 正常的面试(不那是刁难人的那种),都像是未来的同事问你一个比较tricky的问题,看 : 你怎么解决,这样来预测如果招了你,将来是否能放心把项目交给你干,你是否能独挡 : 一面、考虑的是否周全、能否按时按质完成、和大家合作怎么样。 : 刚读完博士毕业的时候,往往觉得自己能搞出很牛的方法,但在公司里面实际上不总是
|