avatar
狗宝宝求救~~~# pets - 心有所宠
m*i
1
找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
1. Facebook电面
面试官做distributed cache infrastructure的,先问我最难的project,没怎么好好
准备过behavior,胡乱说了一通。但是因为做的是电路相关,非行内人士很难明白,讲
的也比较乱。最后估计起到了反效果。感觉如果不是有特别好的经历和体会的话(特别
对于fresh在校内没什么好相关项目经历的)这种最好长话短说想办法一笔带过,不然
可能起到反效果。
浪费了大几分钟开始第一题,leetcode原题,Valid Panlindrome
"A man, a plan, a canal: Panama" is a palindrome.
这题之前做过,也很简单,但当时太紧张出了一个很sb的bug,还是在面试官提示下找
到的。15行的代码出bug实在是不能犯的错误。另外在判断一个char是否letter的时候
没有另用函数把一堆&&写了两次,被批评不够简洁。
第二题,将1->2->3->4->5->6->7 变成 1->7->2->6->3->5->4,不能用额外空间
第一遍用了recursive很快解决,被指出用了stack额外空间,开始改iterative,最后
因为第一题浪费时间手忙脚乱没改完。说了一下大概思路草草收场,面完就知道不妙。
4天后被通知挂了。
总结: facebook非常重视coding的clean和bugfree。 这两题都没什么算法但是如果
coding不过硬第一遍很容易有bug,我感觉从这点上来讲面试官出题水品很高,死的心
服口服。 另外他家感觉比较看背景,phd onsite会有jedi面试问项目经验什么的,专
业差太大估计要超级牛才容易过。
2. Google电面
上来直接上题,题目有些绕。CSS里面表示颜色用
#abcdef (eg 0x1F2A3B) 这种形式, 每个字母代表四个bit (hex),两个字母代表一种
原色
比如 ab = R, cd = G, ef = B
现在需要压缩空间改#abcdef 为 #xyz
实际上#xyz = #xxyyzz,所以减小一半,问怎么找到最好的压缩让
(ab-xx)^2 + (cd - yy)^2 + (ef - z)^2 最小
这题其实数学上很简单因为三个维度是分开的,其实就是找#ab到#xx的压缩。
我当时的面试官是个asian可能是韩国人或abc,有点bitchy。我最开始说让我想一想,
才过了5秒钟他说不知道我在想什么让我在google doc上打,然后我就在上面打example
试图观察一下规律,他又阻止我说不用什么都打出来。完了我说了我的观察: a的权重
更大, x应该很接近a, 实际上 x = a, a - 1 , or a + 1。 然后他不置可否。可能
我说的不是很清楚,他又开始和我纠结我的变量名用得不好。因为他一直和我纠结这些
细节,我也没法安心思考,直接就开始写code,又拿不准函数input和output应该用什
么样的type和形式。这就是这种模糊提很麻烦的一个地方。面试官还是不给提示,我就
开始写但是code写的很乱。中途面试官没有任何提示。完了我说想move on到下一题他
说没时间了要我找bug。整个code写的很糟,因为没有分情况按 a > b 时 x = a, a- 1
, a < b时 x = a, a + 1这样来考虑所以变成了for loop非常乱。还剩5分钟时万念俱
灰面试官问我还可以怎么optimize已经没心思回答了跟他说”如果你想让我检查代码我
就看吧“开始有点顶撞他的意思。我电面这么多次第一次和面试官搞得这么僵心情非常
沮丧。最后草草收尾。3天后通知被挂。
心得体会:google电面其实是很松的,很容易过。电面没过打击很大,除了运气不好碰
到面试经验不丰富的面试官和模糊题外主要问题还在自己。因为题目并不难,就算和面
试官不和拍也应该避免干扰仔细思考认真写代码。特别是到后面十分钟我有点破罐子破
摔,这样给面试官映像肯定非常糟糕。因为面试的一个目的就是考验你是rise against
challenge还是crash under pressure。这点上我表现的非常失败。因为google家比较
看中算法算是我的强项,所以没能去成onsite非常可惜。
3. Rocket Fuel
网上交简历,当天收到hr回信,过两天和hr电话chat半个小时,主要问问背景和看你是
不是serious applicant。完了发来online test 5hour。我做的auto racer。没有
follow他的hints选了最优算法但是由于编不出balanced avl tree有个test case没过
,还是个给了电面,面试官是三哥,电面是之前有人贴过的ad query题,给出了大家讨
论的最优答案,又拓展到分布式系统。才说了半个小时面试官突然说时间到了问我有没
什么问题,我看他很急就说没问题就bye了。本来以为肯定挂了因为预定要一个小时,
结果过了两天recruiter说feedback very positive让我去onsite有点莫名其妙。
onsite中午和一个cmu毕业的topcoder 2000+的nb phd吃饭闲聊了一下,下午面了四个
人,三个三哥一个asian。两个big data infrastucture(最后端)的, 两个serving
infrastrucre(中后端)的。所有题目在之前rocket fuel的帖子里或者leetcode都能
找到,除了一道挺有意思的题
给定一个n*n的board里面是0或1.算出里面独立0group的数量。比如
0 0 1 1 1
0 1 1 1 0
1 1 1 1 0
1 0 1 1 1
1 1 1 1 1
答案是3个group。我瞬间给出了一个BFS的O(n^2)答案,被指出需要visited数组的额外
空间。然后给了一个逐行扫描的算法相当tricky,我经过提示才想出来。面试完后第二
天被告知挂了。其实自我感觉还不错除了java multithreading答的不好。recruiter给
的反馈是总体还不错但有人指出我coding a bit messy。说另外还有一个不错的
candidate选了另外那个人,说我是pretty close。我自己猜测如果不是因为另外一个
人是三哥或美国人这种原因还是死在coding quality上,另外背景实在差的有点远。他
家要求最好一遍写出clean code。另外在onsite是建议code不要写太长,如果要超过一
黑板最好把里面主要部件都先用函数代替写出主要流程向面试官说明之后补充即可。
心得: onsite时因为很多题都见过经常迅速讲一下思路就开始coding,感觉交流不够
。面试的时候交流还是第一位的,如果跑上来就写代码写的再好面试官对你印象也未必
好(可能还会觉得你是练过的),因为他会把你当成未来的coworker所以交流的融洽是
很重要的。rf家的big data infrastructure全部是三哥,我觉得这也是我挂的一个原
因,建议申请ai optimization那些核心组,那才是他们家的精髓所在。rf没有之前提
的那些帖子那么乱但感觉还是不够正规,面试的时候不是很舒服,连schedule都不给你
,说好的面试官经常换人。
总体心得:coding不过硬会导致必然的失败。我之前就是觉得自己算法底子不错忽视了
coding,其实本末倒置。工作中coding才是最重要的,而且看了很多牛人的coding之后
才发现这个事情真的不是搬砖那么简单,同一个内容的程序coding好不好能差很多(再
加上clear和readability的考虑)。顶尖it公司要的不是average coder而是top coder
,所以以前仗着算法不错就满足于average的coding水品实在是很幼稚,以后一定会在
这方面加强锻炼。
个人还有些算法和advanced data structure的重点觉得没有在leetcode里面很好体现
的,总结如下:
1. 很多recursive容易的算法也要考虑iterative方法。因为掌握iterative代表你对问
题结构理解上升了一个高度。e.g. reverse linked list, tree traversal
2. i) top k (kth) elements: heap O(n+klogn), quickselect O(n) average O(n^2)
worst, median of medians O(n) worst. cons and pros.
Extension: what if all data can not fit into memory. heap size of k O(nlogk)
for single machine, many machines see 3.
ii) get median in data stream: max heap + min heap
3. kth element in many m machines: binary search, pick a pivot and see how
many less and larger among all machines, then discard halves accordingly (
distributed quickselect)
if sorted in single machine: find smallest (k/m)th element among all
machines and discard the less partition.
4. stack support O(1) getMin
queue support O(1) getMin
e.g. k sliding window, most frequently clicked url in past 12 months.
5. reservoir sampling for infinite stream, generate random(1-7) with random(
1-5), card shuffle, string permute in place
6. data structure with O(1) insert, delete, getRandom, get: hashmap + array
LRU data structure: hashmap + doublelikedlist.
binary search tree with rank() (position of inserted or queried data)
(add treesize attribute for each node)
7. bit operation and bitset.
e.g. find missing number in large data, reverse binary number,
8. java multi-threading, blocking queue, nonblocking queue, H20, philosophy
dining, deadlock checking. 现在是个公司都问concurrency,一定要好好准备。
9. OOP: elevator design, parking lot design
distributed: large log file design, social network design, distributed cache
design ....
本人已挂等待明年满血复活,祝各位job hunting顺利。
avatar
s*1
2
我家宝宝,就是我头像里的狗狗。今年8岁,是京巴串串。从小到大,总是咬自己的尾
巴。症状是尾巴上一小片红一小片红,咬破之后,流血,结痂。她也偶尔添尾巴。平时
经常咬,如果受到
刺激:比如给她一根骨头,或者跟她玩球球,她就更要咬自己的尾巴:经常是一边吼一
边咬。我父母觉得她是觉得痒,所以才咬。带她去看了不少的兽医,针也打了,药吃了
,也外涂了。医生也给她开了激素,吃了但是都不管用。我在美国这边给她买了止痒的
喷剂还有防止咬尾巴的苦味
绷带,可是对她都不起作用。给她换了最贵的那种狗粮,也不起作用。
刚刚给家里打电话,说这几天她的身上也出现了这样的一小片红一小片红,带她出去玩
她也难受得叫。下午父母带她再去看兽医,不知道能看出什么来。
很害怕呀,要是血液的问题,或者治不了,她就会一直痛苦,如果是这样就有可能被安
乐死?想想都害怕。所以上来万能的宠物版给她问问:有没有有相似经历的家长或者有
经验的家长给出出主意。(入境中国要被隔离,所以没办法把她带到美国来看病。真的
没办法了。到版里试试运气。)
万分感谢大家!!!
avatar
e*a
3
u should enter EDA domain.
avatar
Z*i
4
可怜的狗啊。
个人看法,不如换RAW FEEDING试试。再好的狗粮,也有可能有东西让狗过敏。
似乎咬尾巴也有心理的问题。。。
avatar
p*u
5
楼主贴的Rocket Fuel这一题,应该用并查集的。https://gist.github.com/pdu/
6e950a13964701507252

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
c*e
6
也感觉像过敏啊!狗狗一般都吃啥?用什么洗澡?
avatar
f*t
7
高端洋气面经潜力楼层留名
avatar
a*s
8
帮顶
avatar
c*o
9
mark
avatar
s*1
10
刚刚打电话问了一下我爸。医生说她的肛门腺发炎了,给挤了;然后说身上的红色是因
为螨虫,每个星期打一针,刚刚打了一针。需要打两针之后,看看效果。希望她能好起
来。谢谢回答的家长们!
avatar
d*n
11
very useful. thanks for sharing
avatar
W*1
12
8岁还咬尾巴,没办法了
这个需要小时候发现问题,及时纠正。
avatar
s*n
13
好东东, mark mark
avatar
t*u
14
感觉是皮肤病
很可能是过敏,食物过敏可能性大
avatar
l*o
15
正解

【在 p*u 的大作中提到】
: 楼主贴的Rocket Fuel这一题,应该用并查集的。https://gist.github.com/pdu/
: 6e950a13964701507252
:
: EDA

avatar
b*i
16
起码,在她咬的时候,给她戴个e-collar,制止她咬。
然后想办法找原因治疗,减缓/解除她的不适。

【在 s********1 的大作中提到】
: 刚刚打电话问了一下我爸。医生说她的肛门腺发炎了,给挤了;然后说身上的红色是因
: 为螨虫,每个星期打一针,刚刚打了一针。需要打两针之后,看看效果。希望她能好起
: 来。谢谢回答的家长们!

avatar
m*i
17
我被问到的时候 只考虑上下左右是neighbor,扫描的时候碰到pattern
x 1
1 (0)
group += 1
1 0
0 (0)
group -= 1
括号里面是当前被扫描元素

【在 p*u 的大作中提到】
: 楼主贴的Rocket Fuel这一题,应该用并查集的。https://gist.github.com/pdu/
: 6e950a13964701507252
:
: EDA

avatar
s*M
18
这个和我们家的咬前臂一样,我们也看了医生,开了外涂的药
但是根本不能根治,大家都说是过敏...
但是又排除不了过敏缘...反正就好一阵坏一阵
avatar
e*8
19
lz可以再说的详细些么?比如这两个input:
010
010
000

000
010
000
应该怎么算?

【在 m****i 的大作中提到】
: 我被问到的时候 只考虑上下左右是neighbor,扫描的时候碰到pattern
: x 1
: 1 (0)
: group += 1
: 1 0
: 0 (0)
: group -= 1
: 括号里面是当前被扫描元素

avatar
s*1
20
有。她犯毛病的时候脖圈都不好使,得在她的脖子附近绑一圈被单,直到绑得像小木乃
伊似的她没办法回头才可以。

【在 b********i 的大作中提到】
: 起码,在她咬的时候,给她戴个e-collar,制止她咬。
: 然后想办法找原因治疗,减缓/解除她的不适。

avatar
e*l
21
问题(2):
XY => XX if Y<8
XY =>(X+1)(X+1) otherwise
不就是最接近的吗。怎么会有a-1的情况?
avatar
s*1
22
现在就希望她打那个螨虫针能有效果~

【在 s******M 的大作中提到】
: 这个和我们家的咬前臂一样,我们也看了医生,开了外涂的药
: 但是根本不能根治,大家都说是过敏...
: 但是又排除不了过敏缘...反正就好一阵坏一阵

avatar
m*i
23
比如0xE0,最接近的是oxDD 而不是 0xEE
好像是 a - b > 8时, 选 a- 1

【在 e***l 的大作中提到】
: 问题(2):
: XY => XX if Y<8
: XY =>(X+1)(X+1) otherwise
: 不就是最接近的吗。怎么会有a-1的情况?

avatar
Y*Y
24
是不是肛门腺发炎了?我朋友的狗也是类似症状,后来查出来是。是不是经常喂动物内
脏啊人吃的东西给狗狗吃?
avatar
z*8
25
第二题,将1->2->3->4->5->6->7 变成 1->7->2->6->3->5->4,不能用额外空间
这题的O()是多少?
avatar
s*1
26
我家狗狗都吃专门的狗粮。用专门给狗洗澡的“香波”。真的不知道对什么过敏呀~

【在 c*********e 的大作中提到】
: 也感觉像过敏啊!狗狗一般都吃啥?用什么洗澡?
avatar
m*i
27
O(n^2)

【在 z*********8 的大作中提到】
: 第二题,将1->2->3->4->5->6->7 变成 1->7->2->6->3->5->4,不能用额外空间
: 这题的O()是多少?

avatar
c*2
28
想了下好像可以O(n),反转前半段,然后和后半段交叉合并,然后反转整个list。不知
行不行

【在 m****i 的大作中提到】
: O(n^2)
avatar
m*i
29
应该是对的可以O(n)实现,谢谢指正

【在 c*******2 的大作中提到】
: 想了下好像可以O(n),反转前半段,然后和后半段交叉合并,然后反转整个list。不知
: 行不行

avatar
m*i
30
不好意思之前说的不是很清楚。这是interviewer给我讲的方法,感觉只有当0 group
不围住1时才有效。先将所有边界看成1.
0 1 0
0 1 0
0 0 0
=
1 1 1 1 1
1 0+ 1 0+ 1
1 0 1 0 1
1 0 0 0- 1
1 1 1 1 1
根据 + pattern
x 1
1 0
- pattern
1 0
0 0
但是好像有1被围住就不行了,别的情况都可以。也可能我没听懂还是没把条件听清楚
,可以再研究一下,这个思路还是挺有意思的

【在 e*******8 的大作中提到】
: lz可以再说的详细些么?比如这两个input:
: 010
: 010
: 000
: 和
: 000
: 010
: 000
: 应该怎么算?

avatar
r*d
31
第二题,将1->2->3->4->5->6->7 变成 1->7->2->6->3->5->4,不能用额外空间
怎么觉得怎么都需要额外空间呢
(1) 1->2->3->4->5->6->7
放在一个数组N里面, size(N) = n
(2)把数组 N的值放到另外一个数组M里面,M对应的值如下
N[0]->N(n-1)->N[1]->N[n-2].... N[n/2]->N[n/2+1]
怎么感觉没有看懂题目啊。。。
avatar
b*d
32
mark一下
avatar
e*8
33
恩,我觉得面试的人说的sweep line的方法,有个问题就是怎么判断
???????
???????
0111110
0111110
0000000
这种情况的时候,扫描到最后一个0的时候不知道最后一行的0是把两个原本不同的
component的两端连起来了呢,还是这两端本来就在一个component(因为可能??的那
几行已经有足够长的连续的0)。

【在 m****i 的大作中提到】
: 不好意思之前说的不是很清楚。这是interviewer给我讲的方法,感觉只有当0 group
: 不围住1时才有效。先将所有边界看成1.
: 0 1 0
: 0 1 0
: 0 0 0
: =
: 1 1 1 1 1
: 1 0+ 1 0+ 1
: 1 0 1 0 1
: 1 0 0 0- 1

avatar
g*o
34
mark
avatar
b*e
35
mark

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
p*2
36
mark
最后去的s吗?

【在 g********o 的大作中提到】
: mark
avatar
g*e
37
加油 先在syn做着

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
h*8
38
I feel lz has good backgroud. You should find some small company to practice
interview, leave those big ones at the last. my $0.02
avatar
f*b
39
赞啊
avatar
b*g
40
应该是O(n)
先找出中点,再将第二部分逆转,最后合并
每步均为O(n)

【在 m****i 的大作中提到】
: O(n^2)
avatar
b*g
41
RF那题也许可以用SET MERGE的思想:对于每个0,给他分配一个SET ID,规则如下。
刚开始N=1
X 1 X i X 1 X i
1 0 1 0 i 0 j 0
对应操作:
N++ N-- if i != j
X 1 X i X 1 X i
1 N 1 i i i j min(i, j)
最后返回 N - 1,并将数组中非1的数置为0
avatar
c*y
42
Cmft
avatar
b*m
43
直接dfs把0改成2,最后把所有的2改回来0,不一样吗?

【在 b********g 的大作中提到】
: RF那题也许可以用SET MERGE的思想:对于每个0,给他分配一个SET ID,规则如下。
: 刚开始N=1
: X 1 X i X 1 X i
: 1 0 1 0 i 0 j 0
: 对应操作:
: N++ N-- if i != j
: X 1 X i X 1 X i
: 1 N 1 i i i j min(i, j)
: 最后返回 N - 1,并将数组中非1的数置为0

avatar
m*i
44
记得当时面试官说不让改原数据,也没有额外空间。如果有额外空间我觉得graph
traversal比set merge还是直观一些。

【在 b********g 的大作中提到】
: RF那题也许可以用SET MERGE的思想:对于每个0,给他分配一个SET ID,规则如下。
: 刚开始N=1
: X 1 X i X 1 X i
: 1 0 1 0 i 0 j 0
: 对应操作:
: N++ N-- if i != j
: X 1 X i X 1 X i
: 1 N 1 i i i j min(i, j)
: 最后返回 N - 1,并将数组中非1的数置为0

avatar
c*p
45
你这效率也太快了!我还没开始申请你怎么就挂了啊。。。
avatar
m*i
46
找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
1. Facebook电面
面试官做distributed cache infrastructure的,先问我最难的project,没怎么好好
准备过behavior,胡乱说了一通。但是因为做的是电路相关,非行内人士很难明白,讲
的也比较乱。最后估计起到了反效果。感觉如果不是有特别好的经历和体会的话(特别
对于fresh在校内没什么好相关项目经历的)这种最好长话短说想办法一笔带过,不然
可能起到反效果。
浪费了大几分钟开始第一题,leetcode原题,Valid Panlindrome
"A man, a plan, a canal: Panama" is a palindrome.
这题之前做过,也很简单,但当时太紧张出了一个很sb的bug,还是在面试官提示下找
到的。15行的代码出bug实在是不能犯的错误。另外在判断一个char是否letter的时候
没有另用函数把一堆&&写了两次,被批评不够简洁。
第二题,将1->2->3->4->5->6->7 变成 1->7->2->6->3->5->4,不能用额外空间
第一遍用了recursive很快解决,被指出用了stack额外空间,开始改iterative,最后
因为第一题浪费时间手忙脚乱没改完。说了一下大概思路草草收场,面完就知道不妙。
4天后被通知挂了。
总结: facebook非常重视coding的clean和bugfree。 这两题都没什么算法但是如果
coding不过硬第一遍很容易有bug,我感觉从这点上来讲面试官出题水品很高,死的心
服口服。 另外他家感觉比较看背景,phd onsite会有jedi面试问项目经验什么的,专
业差太大估计要超级牛才容易过。
2. Google电面
上来直接上题,题目有些绕。CSS里面表示颜色用
#abcdef (eg 0x1F2A3B) 这种形式, 每个字母代表四个bit (hex),两个字母代表一种
原色
比如 ab = R, cd = G, ef = B (每种原色整个是0-255间的一个数字)
现在需要压缩空间改#abcdef 为 #xyz
实际上#xyz = #xxyyzz,所以减小一半,问怎么找到最好的压缩让
(ab-xx)^2 + (cd - yy)^2 + (ef - zz)^2 最小
这题其实数学上很简单因为三个维度是分开的,其实就是找#ab到#xx的压缩。
我当时的面试官是个asian可能是韩国人或abc,有点bitchy。我最开始说让我想一想,
才过了5秒钟他说不知道我在想什么让我在google doc上打,然后我就在上面打example
试图观察一下规律,他又阻止我说不用什么都打出来。完了我说了我的观察: a的权重
更大, x应该很接近a, 实际上 x = a, a - 1 , or a + 1。 然后他不置可否。可能
我说的不是很清楚,他又开始和我纠结我的变量名用得不好。因为他一直和我纠结这些
细节,我也没法安心思考,直接就开始写code,又拿不准函数input和output应该用什
么样的type和形式。这就是这种模糊提很麻烦的一个地方。面试官还是不给提示,我就
开始写但是code写的很乱。中途面试官没有任何提示。完了我说想move on到下一题他
说没时间了要我找bug。整个code写的很糟,因为没有分情况按 a > b 时 x = a, a- 1
, a < b时 x = a, a + 1这样来考虑所以变成了for loop非常乱。还剩5分钟时万念俱
灰面试官问我还可以怎么optimize已经没心思回答了跟他说”如果你想让我检查代码我
就看吧“开始有点顶撞他的意思。我电面这么多次第一次和面试官搞得这么僵心情非常
沮丧。最后草草收尾。3天后通知被挂。
心得体会:google电面其实是很松的,很容易过。电面没过打击很大,除了运气不好碰
到面试经验不丰富的面试官和模糊题外主要问题还在自己。因为题目并不难,就算和面
试官不和拍也应该避免干扰仔细思考认真写代码。特别是到后面十分钟我有点破罐子破
摔,这样给面试官映像肯定非常糟糕。因为面试的一个目的就是考验你是rise against
challenge还是crash under pressure。这点上我表现的非常失败。因为google家比较
看中算法算是我的强项,所以没能去成onsite非常可惜。
3. Rocket Fuel
网上交简历,当天收到hr回信,过两天和hr电话chat半个小时,主要问问背景和看你是
不是serious applicant。完了发来online test 5hour。我做的auto racer。没有
follow他的hints选了最优算法但是由于编不出balanced avl tree有个test case没过
,还是个给了电面,面试官是三哥,电面是之前有人贴过的ad query题,给出了大家讨
论的最优答案,又拓展到分布式系统。才说了半个小时面试官突然说时间到了问我有没
什么问题,我看他很急就说没问题就bye了。本来以为肯定挂了因为预定要一个小时,
结果过了两天recruiter说feedback very positive让我去onsite有点莫名其妙。
onsite中午和一个cmu毕业的topcoder 2000+的nb phd吃饭闲聊了一下,下午面了四个
人,三个三哥一个asian。两个big data infrastucture(最后端)的, 两个serving
infrastrucre(中后端)的。所有题目在之前rocket fuel的帖子里或者leetcode都能
找到,除了一道挺有意思的题
给定一个n*n的board里面是0或1.算出里面独立0group的数量。比如
0 0 1 1 1
0 1 1 1 0
1 1 1 1 0
1 0 1 1 1
1 1 1 1 1
答案是3个group。我瞬间给出了一个BFS的O(n^2)答案,被指出需要visited数组的额外
空间。然后给了一个逐行扫描的算法相当tricky,我经过提示才想出来。面试完后第二
天被告知挂了。其实自我感觉还不错除了java multithreading答的不好。recruiter给
的反馈是总体还不错但有人指出我coding a bit messy。说另外还有一个不错的
candidate选了另外那个人,说我是pretty close。我自己猜测如果不是因为另外一个
人是三哥或美国人这种原因还是死在coding quality上,另外背景实在差的有点远。他
家要求最好一遍写出clean code。另外在onsite是建议code不要写太长,如果要超过一
黑板最好把里面主要部件都先用函数代替写出主要流程向面试官说明之后补充即可。
心得: onsite时因为很多题都见过经常迅速讲一下思路就开始coding,感觉交流不够
。面试的时候交流还是第一位的,如果跑上来就写代码写的再好面试官对你印象也未必
好(可能还会觉得你是练过的),因为他会把你当成未来的coworker所以交流的融洽是
很重要的。rf家的big data infrastructure全部是三哥,我觉得这也是我挂的一个原
因,建议申请ai optimization那些核心组,那才是他们家的精髓所在。rf没有之前提
的那些帖子那么乱但感觉还是不够正规,面试的时候不是很舒服,连schedule都不给你
,说好的面试官经常换人。
总体心得:coding不过硬会导致必然的失败。我之前就是觉得自己算法底子不错忽视了
coding,其实本末倒置。工作中coding才是最重要的,而且看了很多牛人的coding之后
才发现这个事情真的不是搬砖那么简单,同一个内容的程序coding好不好能差很多(再
加上clear和readability的考虑)。顶尖it公司要的不是average coder而是top coder
,所以以前仗着算法不错就满足于average的coding水品实在是很幼稚,以后一定会在
这方面加强锻炼。
个人还有些算法和advanced data structure的重点觉得没有在leetcode里面很好体现
的,总结如下:
1. 很多recursive容易的算法也要考虑iterative方法。因为掌握iterative代表你对问
题结构理解上升了一个高度。e.g. reverse linked list, tree traversal
2. i) top k (kth) elements: heap O(n+klogn), quickselect O(n) average O(n^2)
worst, median of medians O(n) worst. cons and pros.
Extension: what if all data can not fit into memory. heap size of k O(nlogk)
for single machine, many machines see 3.
ii) get median in data stream: max heap + min heap
3. kth element in many m machines: binary search, pick a pivot and see how
many less and larger among all machines, then discard halves accordingly (
distributed quickselect)
if sorted in single machine: find smallest (k/m)th element among all
machines and discard the less partition.
4. stack support O(1) getMin
queue support O(1) getMin
e.g. k sliding window, most frequently clicked url in past 12 months.
5. reservoir sampling for infinite stream, generate random(1-7) with random(
1-5), card shuffle, string permute in place
6. data structure with O(1) insert, delete, getRandom, get: hashmap + array
LRU data structure: hashmap + doublelikedlist.
binary search tree with rank() (position of inserted or queried data)
(add treesize attribute for each node)
7. bit operation and bitset.
e.g. find missing number in large data, reverse binary number,
8. java multi-threading, blocking queue, nonblocking queue, H20, philosophy
dining, deadlock checking. 现在是个公司都问concurrency,一定要好好准备。
9. OOP: elevator design, parking lot design
distributed: large log file design, social network design, distributed cache
design ....
本人已挂等待明年满血复活,祝各位job hunting顺利。
avatar
e*a
47
u should enter EDA domain.
avatar
p*u
48
楼主贴的Rocket Fuel这一题,应该用并查集的。https://gist.github.com/pdu/
6e950a13964701507252

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
f*t
49
高端洋气面经潜力楼层留名
avatar
c*o
50
mark
avatar
d*n
51
very useful. thanks for sharing
avatar
s*n
52
好东东, mark mark
avatar
l*o
53
正解

【在 p*u 的大作中提到】
: 楼主贴的Rocket Fuel这一题,应该用并查集的。https://gist.github.com/pdu/
: 6e950a13964701507252
:
: EDA

avatar
m*i
54
我被问到的时候 只考虑上下左右是neighbor,扫描的时候碰到pattern
x 1
1 (0)
group += 1
1 0
0 (0)
group -= 1
括号里面是当前被扫描元素

【在 p*u 的大作中提到】
: 楼主贴的Rocket Fuel这一题,应该用并查集的。https://gist.github.com/pdu/
: 6e950a13964701507252
:
: EDA

avatar
e*8
55
lz可以再说的详细些么?比如这两个input:
010
010
000

000
010
000
应该怎么算?

【在 m****i 的大作中提到】
: 我被问到的时候 只考虑上下左右是neighbor,扫描的时候碰到pattern
: x 1
: 1 (0)
: group += 1
: 1 0
: 0 (0)
: group -= 1
: 括号里面是当前被扫描元素

avatar
e*l
56
问题(2):
XY => XX if Y<8
XY =>(X+1)(X+1) otherwise
不就是最接近的吗。怎么会有a-1的情况?
avatar
m*i
57
比如0xE0,最接近的是oxDD 而不是 0xEE
好像是 a - b > 8时, 选 a- 1

【在 e***l 的大作中提到】
: 问题(2):
: XY => XX if Y<8
: XY =>(X+1)(X+1) otherwise
: 不就是最接近的吗。怎么会有a-1的情况?

avatar
z*8
58
第二题,将1->2->3->4->5->6->7 变成 1->7->2->6->3->5->4,不能用额外空间
这题的O()是多少?
avatar
m*i
59
O(n^2)

【在 z*********8 的大作中提到】
: 第二题,将1->2->3->4->5->6->7 变成 1->7->2->6->3->5->4,不能用额外空间
: 这题的O()是多少?

avatar
c*2
60
想了下好像可以O(n),反转前半段,然后和后半段交叉合并,然后反转整个list。不知
行不行

【在 m****i 的大作中提到】
: O(n^2)
avatar
m*i
61
应该是对的可以O(n)实现,谢谢指正

【在 c*******2 的大作中提到】
: 想了下好像可以O(n),反转前半段,然后和后半段交叉合并,然后反转整个list。不知
: 行不行

avatar
m*i
62
不好意思之前说的不是很清楚。这是interviewer给我讲的方法,感觉只有当0 group
不围住1时才有效。先将所有边界看成1.
0 1 0
0 1 0
0 0 0
=
1 1 1 1 1
1 0+ 1 0+ 1
1 0 1 0 1
1 0 0 0- 1
1 1 1 1 1
根据 + pattern
x 1
1 0
- pattern
1 0
0 0
但是好像有1被围住就不行了,别的情况都可以。也可能我没听懂还是没把条件听清楚
,可以再研究一下,这个思路还是挺有意思的

【在 e*******8 的大作中提到】
: lz可以再说的详细些么?比如这两个input:
: 010
: 010
: 000
: 和
: 000
: 010
: 000
: 应该怎么算?

avatar
r*d
63
第二题,将1->2->3->4->5->6->7 变成 1->7->2->6->3->5->4,不能用额外空间
怎么觉得怎么都需要额外空间呢
(1) 1->2->3->4->5->6->7
放在一个数组N里面, size(N) = n
(2)把数组 N的值放到另外一个数组M里面,M对应的值如下
N[0]->N(n-1)->N[1]->N[n-2].... N[n/2]->N[n/2+1]
怎么感觉没有看懂题目啊。。。
avatar
b*d
64
mark一下
avatar
e*8
65
恩,我觉得面试的人说的sweep line的方法,有个问题就是怎么判断
???????
???????
0111110
0111110
0000000
这种情况的时候,扫描到最后一个0的时候不知道最后一行的0是把两个原本不同的
component的两端连起来了呢,还是这两端本来就在一个component(因为可能??的那
几行已经有足够长的连续的0)。

【在 m****i 的大作中提到】
: 不好意思之前说的不是很清楚。这是interviewer给我讲的方法,感觉只有当0 group
: 不围住1时才有效。先将所有边界看成1.
: 0 1 0
: 0 1 0
: 0 0 0
: =
: 1 1 1 1 1
: 1 0+ 1 0+ 1
: 1 0 1 0 1
: 1 0 0 0- 1

avatar
g*o
66
mark
avatar
b*e
67
mark

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
p*2
68
mark
最后去的s吗?

【在 g********o 的大作中提到】
: mark
avatar
g*e
69
加油 先在syn做着

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
h*8
70
I feel lz has good backgroud. You should find some small company to practice
interview, leave those big ones at the last. my $0.02
avatar
f*b
71
赞啊
avatar
b*g
72
应该是O(n)
先找出中点,再将第二部分逆转,最后合并
每步均为O(n)

【在 m****i 的大作中提到】
: O(n^2)
avatar
b*g
73
RF那题也许可以用SET MERGE的思想:对于每个0,给他分配一个SET ID,规则如下。
刚开始N=1
X 1 X i X 1 X i
1 0 1 0 i 0 j 0
对应操作:
N++ N-- if i != j
X 1 X i X 1 X i
1 N 1 i i i j min(i, j)
最后返回 N - 1,并将数组中非1的数置为0
avatar
c*y
74
Cmft
avatar
b*m
75
直接dfs把0改成2,最后把所有的2改回来0,不一样吗?

【在 b********g 的大作中提到】
: RF那题也许可以用SET MERGE的思想:对于每个0,给他分配一个SET ID,规则如下。
: 刚开始N=1
: X 1 X i X 1 X i
: 1 0 1 0 i 0 j 0
: 对应操作:
: N++ N-- if i != j
: X 1 X i X 1 X i
: 1 N 1 i i i j min(i, j)
: 最后返回 N - 1,并将数组中非1的数置为0

avatar
m*i
76
记得当时面试官说不让改原数据,也没有额外空间。如果有额外空间我觉得graph
traversal比set merge还是直观一些。

【在 b********g 的大作中提到】
: RF那题也许可以用SET MERGE的思想:对于每个0,给他分配一个SET ID,规则如下。
: 刚开始N=1
: X 1 X i X 1 X i
: 1 0 1 0 i 0 j 0
: 对应操作:
: N++ N-- if i != j
: X 1 X i X 1 X i
: 1 N 1 i i i j min(i, j)
: 最后返回 N - 1,并将数组中非1的数置为0

avatar
c*p
77
你这效率也太快了!我还没开始申请你怎么就挂了啊。。。
avatar
b*i
78
总结的data structure部分太好了,mark一下。
avatar
w*t
79
大赞sharing~
avatar
b*f
80
Mark
avatar
w*g
81
mark

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
h*8
82
mark
avatar
k*o
83
mark
avatar
b*i
84
总结的data structure部分太好了,mark一下。
avatar
w*t
85
大赞sharing~
avatar
b*f
86
Mark
avatar
w*g
87
mark

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
h*8
88
mark
avatar
k*o
89
mark
avatar
J*g
90
ad query这个题目最优算法是啥?

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
G*m
91
最后去S了?

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
U*A
92
你觉得这样做怎么样?
1.先扫描第一行,计算0 group的个数。
2.然后逐行扫描,如果现在的cell的上面或者左边有0相接的话,就不增加总的数量,
否者将0的group数加1.
int numOfZeroGroup(vector > & v)
{
int count = 0;
int m= (int)v.size();
int n= (int)v[0].size();
//计算第一行的0 group数量
for(int i=0; i{
if(v[0][i] == 0)
{
continue;
}

if(v[0][i-1] == 0)
{
count++;
}
}

for(int i=1; i{
//每一行的第一树做特殊处理,因为只要是它的上方是0就不用增加总数
if(v[i][0] == 0 && v[i-1][0] != 0)
{
count++;
}

for(int j=1; j{
if(v[i][j] == 0)
{
//它的上方或者左方是0就不用增加总数
if(v[i-1][j] != 0 && v[i][j-1] != 0)
{
count++;
}
}
}
}

return count;
}

【在 m****i 的大作中提到】
: 记得当时面试官说不让改原数据,也没有额外空间。如果有额外空间我觉得graph
: traversal比set merge还是直观一些。

avatar
p*u
93
mark
avatar
b*d
94
mark
avatar
m*n
95
终于搞懂了google那道题的意思了。
楼主做不出来太正常了。估计没几个人面试能做出来吧。
这不是一道编程题,而是数学题啊。

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
Z*4
96
帅哥
虽然是数学题但是好像不是很复杂?
我感觉楼主的思路是对的,只需要考虑a-1a-1跟a+1a+1等吧?

【在 m*****n 的大作中提到】
: 终于搞懂了google那道题的意思了。
: 楼主做不出来太正常了。估计没几个人面试能做出来吧。
: 这不是一道编程题,而是数学题啊。
:
: EDA

avatar
y*n
97
大牛能不能指点一下,我还是不清楚这个题要问什么。

【在 m*****n 的大作中提到】
: 终于搞懂了google那道题的意思了。
: 楼主做不出来太正常了。估计没几个人面试能做出来吧。
: 这不是一道编程题,而是数学题啊。
:
: EDA

avatar
w*n
98
mark

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
f*w
99
The second problem for Google:
For RGB, ab is 16*a + b; xx is 16*x + x
The problem is to minimize |17x - 16a - b|^2, x from 0 to 15.
Only need to consider x = a - 1, a, or a + 1, depends on the value of b.
So we only need to compare |a - b|, |a - b - 17| and |a - b + 17|.
Note that -15 <= a - b <= 15; we can get the closest solution: if a - b >= 9
, we should choose x = a - 1; if a - b <= -9, we should choose x = a + 1;
otherwise we should choose x = a.
avatar
m*9
100
ad query是哪道题啊?求链接。
avatar
m*s
101
Zan!

EDA

【在 m****i 的大作中提到】
: 找工作期间在本版潜水两个月,收益良多,发一下最近面经和经验作为回馈。
: 本人背景:美国不错学校电子PHD即将毕业,专业是EDA做电路设计算法优化。因为EDA
: 已经是一个很稳定的工业,没什么太大的前景,随想转到前沿的tech公司。本专业只投
: 了一家现在最大的公司,拿到offer。别的投了Google, Facebook, Rocket fuel,
: Twitter, Linkedin, Yahoo, Amazon, Box, Oracle. 除了box别的都找人refer了, 在
: 此感谢板上大哥们的热情帮忙. 除了GFR别的都没理我,可能背景差太大了。
: 因为之前是学算法的,mit算法书以前就看过两遍,基础还可以,前期8月份刷了遍
: leetcode。然后9月初投出简历。两个星期刷Career cup 150, 最后面试期间一直查缺
: 补漏。到现在尘埃落定大概两个月。 最后GFR全挂,总结下惨痛经历:
: 1. Facebook电面

avatar
s*i
102
google那题没懂,四个bit怎么表示0-255的数?
avatar
W*y
103
zan!

9

【在 f*******w 的大作中提到】
: The second problem for Google:
: For RGB, ab is 16*a + b; xx is 16*x + x
: The problem is to minimize |17x - 16a - b|^2, x from 0 to 15.
: Only need to consider x = a - 1, a, or a + 1, depends on the value of b.
: So we only need to compare |a - b|, |a - b - 17| and |a - b + 17|.
: Note that -15 <= a - b <= 15; we can get the closest solution: if a - b >= 9
: , we should choose x = a - 1; if a - b <= -9, we should choose x = a + 1;
: otherwise we should choose x = a.

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。