Tuesday, February 26, 2013

G家 onsite 面经

 
 

Sent to you by Zhiyuan via Google Reader:

 
 

via 未名空间 MITBBS 置顶文章 by Zhiyuan on 2/25/13


http://www.mitbbs.com/article_t/JobHunting/32335813.html

发信人: racooon (racoon), 信区: JobHunting
标  题: G家 onsite 面经
发信站: BBS 未名空间站 (Sun Feb 24 15:18:13 2013, 美东)

onsite之后有个interviewer旅游去了,4周之后才拿到feedback,提交HC之后又一周没
动静了,给recruiter发信也不回。实在等得心烦。发个面经就算挂了然后move on吧。
是fresh master.

两轮电面,都是经典题。写完2个题还有点时间,讨论了一个设计题,我到现在也不理
解题意。
有一种新型存储设备,特点是:
1.    价格贵,稳定性高
2.    可读写,但写入的内容不能修改
如何利用它的特点设计一个存储系统。在聊天过程中增加了一些条件,如果有个人写了
个脚本不停用同样的内容写你的文件系统怎么办,怎么判断每次写入的东西是不是新的
呢。

4轮Onsite 3个印度人一个欧洲人。都是从简单的题开始,不停改改改。都讨论了项目
经验,还问得很细。写完代码都是要照相的,我有个题是开始写得挺干净,后来条件加
加加就改花了,然后interviewer掏出手机拍了一张。。我觉得是不是可以在写完第一
版之后就请他拍一张先。。。

1.一个binary search变体。 写完之后开始抠代码,说如果把终止条件从low<=high 改
成low<high, 如果mid取上界取下界有什么区别。 我后来看到peking2的帖子,才意识
到这种问题是应该事先总结好的。我当时只是针对那个题在讨论,没有总结一下。
http://blog.sina.com.cn/s/blog_b9285de20101h88j.html

2.一个doc里有很多word. 在很多doc里面快速找出符合条件的一对pair <doc1, doc2>,
条件是它们有且只有一个相同的word. Doc很多,不能全部放入内存。从概率上应该从
哪种doc先下手找
Doc1<word1, word2, word3>
Doc2<word1, word4, word5>
Doc3<word2, word3>
找到<doc1, doc2>

3.一个input stream, 实现peek, read, write. 
我先假设这个stream是个内存里的数组,写了peek read write 函数
加条件说Input stream可以是数据库,文件,STDIN,stream不能一次读入内存。
我跟这个interviewer沟通不是太好。加条件的时候我很糊涂,我说是考java里怎么实
现文件和数据库的读写吗?他说我只是辅助你来设计的,我不能告诉你怎么实现。我又
换着问了几遍说我没理解题意。他说不能hint你太多。我最后就写了一个input类,说
可以接受各种类型输入。我猜是考OO设计吧。

Good Luck to everyone!

--


 
 

Things you can do from here:

 
 

No comments:

Blog Archive