一亩三分地论坛

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

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

狗家onsite

[复制链接] |试试Instant~ |关注本帖
hxtang 发表于 2016-10-14 10:58:05 | 显示全部楼层 |阅读模式

2016(10-12月) 码农类 博士 全职@Google - 内推 - Onsite |Otherfresh grad应届毕业生

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

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

x
狗家明确说不要share题目,而且有可能用他家保底,所以描述得模糊一点请见谅。都是lc简单-中等题。. more info on 1point3acres.com
第一轮:第一题是2d空间dp的lc题,第二题是binary tree题,就是常见的recursion可以做的哪种,分析复杂度。
第二轮:binary tree题,可以用recursion做。然后扩展到多叉树,然后扩展到图。.鐣欏璁哄潧-涓浜-涓夊垎鍦
第三轮:先问了一个比较简单的hc题。使用了一些算median,sort,hashing之类的小trick。然后问了一个queue+heap的题,k-way merge的思路. Waral 鍗氬鏈夋洿澶氭枃绔,
第四轮:先讲了个简历上的故事。然后一个贪心的题,后面加了一个sliding window的优化和一个小优化。最后给了线性解,面试官说其实可以O(1)(真的吗...)但线性也很好
第五轮:讨论thesis...这个没啥可讲的。

除了第三轮第三个followup code只写了一半+用例子解释了另一半,别的都写了完整的code。第三轮第四轮顺便提了几个c++中级难度的冷知识。觉得可能是我coding速度比较快,面试官怕没有题可问,所以followup也让写了code。第三轮的面试官明确表示他其实只期待我做第一题,但是因为我太快了,所以再问我第二题,而且并没指望我会做。最后我给的解好于他知道的,所以他基本问第二题的时候全程wow(虽然其实那两个题真的不难啊...)。另外也有一轮面试官(忘了哪轮了)说我very fast。


一个比较搞笑的小故事是因为昨天已经陆续有offer了,于是昨天完全没有motivation准备G,散漫了一天被lg批评面G态度不好...面完向lg汇报了面试经过lg表示承认错误...



补充内容 (2016-10-14 10:59):
补充一个小tip:做题的中间跟面试官讲了一些code相关的c++中等难度冷知识,面试官还是很买帐的。. 鍥磋鎴戜滑@1point 3 acres

补充内容 (2016-10-18 00:50):
Recruiter说feedback look very good,本周送hc

评分

2

查看全部评分

本帖被以下淘专辑推荐:

 楼主| hxtang 发表于 2016-10-14 11:19:41 | 显示全部楼层
WhatsFLAG 发表于 2016-10-14 11:08.鐣欏璁哄潧-涓浜-涓夊垎鍦
热烈庆祝楼主又一次大获全胜,鼓掌!

谢谢支持。今天比较搞笑的一幕是第三个面试官到结束时我写followup的实现的时候开始和我聊天,问我有没有面别家,情况怎样。然后我跟他说目前有onsite的都offer了,然后感觉他崩溃了...
回复 支持 1 反对 0

使用道具 举报

 楼主| hxtang 发表于 2016-10-27 22:27:55 | 显示全部楼层
今天终于拿到offer,135k base + 50k signon + 440gsu
之前说Seattle area没位置了,投的research team各种简历据,现在又说location和research team都可以安排...
回复 支持 1 反对 0

使用道具 举报

 楼主| hxtang 发表于 2016-10-14 11:34:22 | 显示全部楼层
lookbackinanger 发表于 2016-10-14 11:24
恭喜恭喜!好奇c++冷知识啊!

其实就是一些比较多中级c++用户都知道的,但是可能初学者不太注意的事情。其实这些也是刷题的过程中注意到的小地方。

我讲的包括. 1point 3acres 璁哄潧
-有的算法能用unordered_set能用sort,虽然sort复杂度没有unordered_set好看,但是实际可能还是sort快。因为hashing的时候算hash function, chaining,各种都是时间。
-unordered_set<pair<int, int>>好像要自己写hash function的。我本来想讲一下double hashing,但是面试官觉得我指出这点已经很变态了。
-istringstream的eof难用的要死。一定要试图读个啥出来然后失败了才能eof返回true。 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
-写priority_queue的comparator的时候简单解释了下decl_type
回复 支持 1 反对 0

使用道具 举报

WhatsFLAG 发表于 2016-10-14 11:08:34 | 显示全部楼层
热烈庆祝楼主又一次大获全胜,鼓掌!
回复 支持 反对

使用道具 举报

lookbackinanger 发表于 2016-10-14 11:24:16 | 显示全部楼层
恭喜恭喜!好奇c++冷知识啊!
回复 支持 反对

使用道具 举报

WhatsFLAG 发表于 2016-10-14 11:25:13 | 显示全部楼层
hxtang 发表于 2016-10-14 11:19
谢谢支持。今天比较搞笑的一幕是第三个面试官到结束时我写followup的实现的时候开始和我聊天,问我有没有 ...

哈哈,最后一问,求面试官心理阴影面积。。。
回复 支持 反对

使用道具 举报

 楼主| hxtang 发表于 2016-10-14 11:40:04 | 显示全部楼层
WhatsFLAG 发表于 2016-10-14 11:25
哈哈,最后一问,求面试官心理阴影面积。。。
. From 1point 3acres bbs
我其实觉得G家面试官真的比我紧张,有的英语也略吃力...可能我今天碰到的新手比较多...
回复 支持 反对

使用道具 举报

zyoppy008 发表于 2016-10-14 11:43:28 | 显示全部楼层
hxtang 发表于 2016-10-14 11:34
其实就是一些比较多中级c++用户都知道的,但是可能初学者不太注意的事情。其实这些也是刷题的过程中注意 ...

其他几个都差不多知道。。第一个啥意思没看懂。。是说有时候可以用unodered_set 来sort吗? 好像不是这个意思?
回复 支持 反对

使用道具 举报

 楼主| hxtang 发表于 2016-10-14 11:46:52 | 显示全部楼层
zyoppy008 发表于 2016-10-14 11:43
其他几个都差不多知道。。第一个啥意思没看懂。。是说有时候可以用unodered_set 来sort吗? 好像不是这个 ...

不是,只是说unordered_set虽然O(n)但是实际很慢,不见得速度最好
总之不是什么高级的c++知识,觉得这个程度的说了又显得考虑周全又不显得geeky
回复 支持 反对

使用道具 举报

zyoppy008 发表于 2016-10-14 11:55:24 | 显示全部楼层
hxtang 发表于 2016-10-14 11:46. 1point3acres.com/bbs
不是,只是说unordered_set虽然O(n)但是实际很慢,不见得速度最好. Waral 鍗氬鏈夋洿澶氭枃绔,
总之不是什么高级的c++知识,觉得这个 ...

哦哦。即使o(1)的coefficient 其实可能挺大 特别是collision
decl_type 我得查查具体啥意思,但是感觉就是把 比如一个auto comp = [](); 这样的函数变量搞一下就变成type 就像 greater<int>() 变成greater<int> 这样子,不知道对不对。
istringstream 用于分割string用的多,但是eof感觉没怎么用到,都是直接放while(),具体细节还是有点糊
double hashing 表示不清楚,hash function得啥时候去了解一下
回复 支持 反对

使用道具 举报

 楼主| hxtang 发表于 2016-10-15 02:43:16 | 显示全部楼层
zyoppy008 发表于 2016-10-14 11:55
哦哦。即使o(1)的coefficient 其实可能挺大 特别是collision
decl_type 我得查查具体啥意思,但是感觉 ...

对,包括有时别的解访问连续空间就好了,或者有的已经在实现上优化了,但是unordered_set都没有。
decl_type说白了就是返回类型,如果comparator就是返回function object吧
istringstream的eof很恶心的是,如果它parse的是一个空传,如果你不get一次,它还是会返回false
double hash就是比如你要hash(x, y),可以先分别hash x,y再组合一下
回复 支持 反对

使用道具 举报

Hmoon 发表于 2016-10-15 03:12:44 | 显示全部楼层
楼主很喜欢recursive 啊,我个人更倾向iterative。因为对我而言感觉recursive逻辑上有点复杂。不用recursive而用iterative 方法对面试有什么影响?,准确说我不太会复杂的recursive,因为实在不喜欢用。我感觉recursive 执行效率也要低于iterative.
回复 支持 反对

使用道具 举报

johnjavabean 发表于 2016-10-15 03:17:41 | 显示全部楼层
别的不说了,只是来膜一下
回复 支持 反对

使用道具 举报

 楼主| hxtang 发表于 2016-10-15 03:21:11 | 显示全部楼层
Hmoon 发表于 2016-10-15 03:12
楼主很喜欢recursive 啊,我个人更倾向iterative。因为对我而言感觉recursive逻辑上有点复杂。不用recursiv ...

如果你说的是tree traversal的话。我以前也喜欢iterative,主要是性能。如果说语义,我觉得recursion对我来说非常直观,直接从定义出发就好。.1point3acres缃
. more info on 1point3acres.com
后来发现因为系统栈优化的关系,其实自己写stack比系统栈慢。。。从此除非怕overflow不然就开心recursion
. From 1point 3acres bbs
当然如果明明可以for loop的肯定不会recursion

补充内容 (2016-10-15 03:23):
以及leetcode上binary tree里比较难的一些题,iterative不好写。。。
回复 支持 反对

使用道具 举报

Hmoon 发表于 2016-10-15 03:26:29 | 显示全部楼层
hxtang 发表于 2016-10-15 03:21
如果你说的是tree traversal的话。我以前也喜欢iterative,主要是性能。如果说语义,我觉得recursion对我 ...

.鐣欏璁哄潧-涓浜-涓夊垎鍦C++不少container 具备stack的功能,比如stack肯定可觉得以,vector也可以啊,这些container在执行stack的效率上有什么区别,有什么资料可以帮助掌握你说的这些很有杀伤力的C++知识。
回复 支持 反对

使用道具 举报

 楼主| hxtang 发表于 2016-10-15 03:34:05 | 显示全部楼层
Hmoon 发表于 2016-10-15 03:26
C++不少container 具备stack的功能,比如stack肯定可觉得以,vector也可以啊,这些container在执行stack ...

是可以,但是比如lc87这种,我觉得stack不好写

我说的这些其实就是刷题积累的。更加高级点的知识就是看effective c++之类的书(虽然这书有的内容out of date了)。再更加高级点的,我周围有两个骨灰级c++高手没事虐我玩一下。。。他们虐我的时候我学的。。
.1point3acres缃
这几个人是没事看更变态的书以及没事写c++编译器玩这么学出来的。他们教我这么干的时候我想了想决心放弃了。。。

补充内容 (2016-10-15 03:37):
还有就是写code碰到神奇的事情的时候问问stack overflow

-google 1point3acres补充内容 (2016-10-15 03:39):
还有就是in practice,我很多题都写了iterative的和recursive的test过,recursion完虐iterative。。。
当时我很挫败地去问大神怎么回事,大神就说了一堆我听不懂的系统栈优化,最后说反正记住没事不要自己写stack
回复 支持 反对

使用道具 举报

zyoppy008 发表于 2016-10-15 03:41:46 | 显示全部楼层
hxtang 发表于 2016-10-15 02:43. visit 1point3acres.com for more.
对,包括有时别的解访问连续空间就好了,或者有的已经在实现上优化了,但是unordered_set都没有。. Waral 鍗氬鏈夋洿澶氭枃绔,
decl_ ...

谢楼主指教,我的确基础不牢,细节把握不够。其实我也喜欢recursion 清晰简洁 比如很多dp问题 我更喜欢写成dfs 加 memorization 边界情况写起来比较简单 而且不需要建多维数组 iteration dp每维很多时候要考虑边界或者size额外加1 比较麻烦 不过感觉还是快很多
回复 支持 反对

使用道具 举报

Hmoon 发表于 2016-10-15 03:44:14 | 显示全部楼层
谢谢!按照你分享的,面试的时候做题写代码只是手段之一,秀肌肉展现自己实力也是目的啊,是这样吗?因为很多人说面试只要会写代码,多刷题就行了,这点我很怀疑。因为如果我学的专业的面试,我是会说很多面试官没问的问题,狠狠地秀肌肉,可是我不是学CS出身的,尽管C++写了不少,都是科学计算的方面的。
回复 支持 反对

使用道具 举报

Griffith♂Guts 发表于 2016-10-15 03:54:33 | 显示全部楼层
楼主,第5轮讲thesis要怎么准备呢,我马上也要onsite了,我的thesis是纯数的,我觉得应该没人能听懂,那到时候应该怎么交流呢。。。
回复 支持 反对

使用道具 举报

 楼主| hxtang 发表于 2016-10-15 04:00:01 | 显示全部楼层
Griffith♂Guts 发表于 2016-10-15 03:54
楼主,第5轮讲thesis要怎么准备呢,我马上也要onsite了,我的thesis是纯数的,我觉得应该没人能听懂,那到 ...

追求浅显易懂吧。我觉得给我安排的sde并不懂我的方向。。。
在这个基础上用浅显易懂的方式表明自己的牛逼和实用价值
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-3 08:45

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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