一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 3075|回复: 15
收起左侧

Google SETI phone+onsite面试题

[复制链接] |试试Instant~ |关注本帖
viveo 发表于 2016-1-29 16:49:39 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类 硕士 全职@Google - 内推 - 技术电面 Onsite |Failfresh grad应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
今天接到Google HR的电话,没有过HC,把面经发在这里,希望对大家有帮助。


请注意我面试的是SETI (Software Engineer, Tools and Infrastructure)职位,并不是SWE (Software Engineer),所以如果是准备后者的同学,不要以我的面经为准。


Phone Interview:
1. 一个sorted的linked list,最后一个node会link回第一个node(相当于是一个loop),现在要把一个新的node插入其中,使整个loop仍旧保持一个sorted的状态。.1point3acres缃
2. 如何测试Gmail。. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷

On-site Interview:
第一轮,美国女
给出一个String,要求rearrange这个String,相邻的两个characters不能相同。如果String不能满足这个要求(比如abbbb),就返回空String。. more info on 1point3acres.com

第二轮,美国小哥
做code review。给出几个class,用来连接数据库、建立table、获取数据等等。要review的code是一个连接database,根据给出的key去fetch data,然后输出结果的function。. From 1point 3acres bbs

(Code review之外,面试官提到了在做test时每次到database去fetch data都要很久,问是否有优化的方法。另外,因为给出的class本身是implement了一个interface,所以面试官询问了一堆Java interface相关的问。)


第三轮,中国小哥
一个graph,如果把其中一个点挪动位置,得到一个新的graph。看起来这两个graphs好像“长得”不一样,但是实际上是相同的。给出两个graph,要求编程判断这两个graphs是否相同。(complexity不计,也就是说可以完全不考虑时间空间复杂度,只要能够解决问题即可。)


. from: 1point3acres.com/bbs
第四轮,美国小哥
1. 给出一个integer array,求其中consecutive的sub-array的最大长度(LeetCode原题,No. 128)。
2. 给出一个tree(不一定是binary,也就是说每个node的children个数不定),求其中元素是consecutive的最大长度。——类似Leetcode原题No. 298,区别是这里的tree不一定是binary tree。

3. 如果题2中的tree大到memory无法运行,要怎么办
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷

第五轮,中国女. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
给出一个binary tree,其中有一个node出了问题,它链接到了一个illegal的位置——比如说,C是D的child,但是有一个链接把C又连回了D,相当于D又是C的child,这不是一个valid的binary tree。要求编程找到这个出错的node,相当于Validate a Binary Tree。


+++++++++++++. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
唠叨些废话。
.鐣欏璁哄潧-涓浜-涓夊垎鍦
我是alumni内推,phone-interview之后第二天通知我电面通过。On-site我拖了很久,最开始约的时间正好赶上了我期末一门课的final presentation,就推到了圣诞假期后。到on-site前一天HR打电话和我确认时,我询问是不是可以再更改时间(因为我拖延症已经到了绝症晚期,当时几乎没刷两道题),HR竟然再次同意了,又往后面推了10天。我想可能是因为自己就住在MTV,所以比较容易re-schedule吧。

我最近这一两个月每天早上八九点才睡,晚上熬夜看小说看美剧(偶尔刷个题),所以不仅完全没有准备好,而且生物钟极其紊乱。去on-site的前一天晚上勉强睡了两个小时,整个人一上午都是昏昏沉沉的,而且非常紧张(毕竟没好好准备)。上午的三轮面试都表现一般,HR在今天打电话时也提到了上午的三场有一个是negative。中午吃饭时觉得自己其实也没什么希望了,唯一的想法就是下午的两轮要好好表现,不要最终总成绩太丢人就行。

HR早上给我打电话的时候大概十点,我刚入睡没几个小时(生物钟还是没改过来),完全没反应过来,迷迷糊糊中只听到HR说到unfortunately,当时就想完了。最后HR礼貌性地提到了什么希望一年之后我可以再申请之类的,搞笑的是也不知道是我当时没睡醒还是太shocked,他说完之后,我完全没有搭话,两个人在电话里互相沉默了大概五秒钟,HR就把电话挂了,估计觉得我超没礼貌吧……

Anyway,我也没什么好抱怨的,Google已经对我相当宽容,归根结底全是我自己准备不充分。虽然on-site之后觉得肯定没戏了,但是从HR的反馈看还是有那么一点侥幸心理,所以这两周每天都挂念着这件事,看不进去书、刷不进去题。今天收到拒绝的电话后,一个想法是,“另一只鞋子总算落地了”,也算幸事一件,继续求职吧。

这些面试题目,希望对大家有帮助。



评分

3

查看全部评分

本帖被以下淘专辑推荐:

Czon 发表于 2016-1-29 23:47:06 | 显示全部楼层
可是两种面试有什么区别呢请问楼主
回复 支持 反对

使用道具 举报

 楼主| viveo 发表于 2016-1-30 10:15:33 | 显示全部楼层
Czon 发表于 2016-1-29 23:47.1point3acres缃
可是两种面试有什么区别呢请问楼主
. Waral 鍗氬鏈夋洿澶氭枃绔,
因为我也没有特别关注过SWE的面试,所以可能并不能说得特别正确。SWTI比较偏test framework和tools的development(也是编程,但是主要是面向Google内部使用),所以面试题目也会有一些测试类的。不过并不多,所以其实大部分是一样的。
回复 支持 反对

使用道具 举报

ryb 发表于 2016-1-30 10:40:06 来自手机 | 显示全部楼层
Β

补充内容 (2016-1-29 18:56):
这一个字母怎么发出来的呢。。
--------------------- 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
LZ这个第四轮和我有一轮一模一样。。我面的是SWE。。
回复 支持 反对

使用道具 举报

qiuxuxing007 发表于 2016-2-1 01:20:21 | 显示全部楼层
我怎么感觉和google 的swe 和sre的面试题目基本一样啊!
回复 支持 反对

使用道具 举报

returning 发表于 2016-2-10 02:00:06 | 显示全部楼层
第三题,其实不好写,怎么判断graph是相同的,基于degree? copy graph的思想不能用这里,开销太大。. more info on 1point3acres.com

补充内容 (2016-2-10 02:26):
既然不考虑复杂度,那直接上clone graph的思想吧,DFS一路向下。
回复 支持 反对

使用道具 举报

bill701 发表于 2016-2-16 05:55:55 | 显示全部楼层
是不是SETI 是5轮啊,swe是4轮啊?为啥我的onsite是5轮啊?难道给我内推的学长推错了??
回复 支持 反对

使用道具 举报

lxy16555 发表于 2016-2-26 13:47:40 | 显示全部楼层
returning 发表于 2016-2-10 02:00
第三题,其实不好写,怎么判断graph是相同的,基于degree? copy graph的思想不能用这里,开销太大。

补充 ...

如果给定两个起点,直接用dfs遍历是不是就可以了?这道题的输入应该就是两个graph的root点吧?还是说root点也可能不一样。。。
回复 支持 反对

使用道具 举报

mingzhou1987 发表于 2016-2-26 14:18:29 | 显示全部楼层
第五题是不是可以用一个set保存preorder visited过的点,如果看到同样的是不是就可以了?
回复 支持 反对

使用道具 举报

returning 发表于 2016-2-27 05:28:58 | 显示全部楼层
lxy16555 发表于 2016-2-26 13:47
如果给定两个起点,直接用dfs遍历是不是就可以了?这道题的输入应该就是两个graph的root点吧?还是说root ...
. 1point 3acres 璁哄潧
对啊,如果root未知,那怎么搞。实际上,假设已知root,写起来也不容易,你如何确定你遍历child的顺序,最后还是一个backtracing的问题。
回复 支持 反对

使用道具 举报

lxy16555 发表于 2016-2-27 10:18:20 | 显示全部楼层
returning 发表于 2016-2-27 05:28
对啊,如果root未知,那怎么搞。实际上,假设已知root,写起来也不容易,你如何确定你遍历child的顺序, ...

确定child的顺序用queue应该可以吧,一层一层递进
回复 支持 反对

使用道具 举报

huangheqing 发表于 2016-3-21 08:15:57 | 显示全部楼层
啊啊!!和我面的职位一样,不过我是在职跳
回复 支持 反对

使用道具 举报

baoxiaoxzz 发表于 2016-10-4 01:22:24 | 显示全部楼层
谢谢楼主分享,最近我也要去面这个职位了,听有的人说这个职位不好,所以楼主也不用太在意结果了,继续向前加油~~
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2016-11-21 10:05:55 | 显示全部楼层
viveo 发表于 2016-1-30 10:15
因为我也没有特别关注过SWE的面试,所以可能并不能说得特别正确。SWTI比较偏test framework和tools的deve ...

楼主怎么回答“如何测试Gmail”这题的啊。。这是要考啥。。
回复 支持 反对

使用道具 举报

Lolipop 发表于 2016-11-22 02:01:41 | 显示全部楼层
请问楼主 店面只有一轮吗?
回复 支持 反对

使用道具 举报

jefferyy 发表于 7 天前 | 显示全部楼层
请问下楼主 怎么回答
3. 如果题2中的tree大到memory无法运行,要怎么办
-google 1point3acres
- 完全没有思路.鐣欏璁哄潧-涓浜-涓夊垎鍦
多谢多谢
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-6 09:13

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表