《数据科学面试40+真题讲解》,K神本年度最后一次开课


一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投,内推你去多家公司面试
Airbnb 数据科学职位
in analytics and inference
天天打游戏、照样领工资,
你要不要来?
把贵司招聘信息放这里
查看: 2246|回复: 14
收起左侧

Google 电面加面

[复制链接] |试试Instant~ |关注本帖
wilsonli 发表于 2016-12-1 03:09:08 | 显示全部楼层 |阅读模式

2016(10-12月) 码农类 硕士 全职@Google - 内推 - 技术电面 |Otherfresh grad应届毕业生

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

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

x
第一次电面没有发挥好,给hr小妹发邮件请求加面,爽快答应。今天刚完事,生死未卜。
题目很简单,考set,unordered_set。但是lz有一个问题没有回答出来,unorder_set的overhead是多大。求大神解答。
. 1point 3acres 璁哄潧
第二题是给一个sorted array,和一个target number,问有多少pair of numbers 的和小于等于target。我写了一个O(n^2),又用set写了一个O(nlgn)。
-google 1point3acres
小哥态度很好,在youtube工作,问了两个问题就结束了。感觉过的可能性不大,发一波面经攒人品。
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷

评分

1

查看全部评分

本帖被以下淘专辑推荐:

catinclay 发表于 2016-12-1 03:12:04 | 显示全部楼层
第一问的overhead是指时间复杂度吗?

第二问应该是用双指针可以O(n)解
回复 支持 反对

使用道具 举报

 楼主| wilsonli 发表于 2016-12-1 03:13:53 | 显示全部楼层
catinclay 发表于 2016-12-1 03:12
第一问的overhead是指时间复杂度吗?

第二问应该是用双指针可以O(n)解

overhead指的是memory overhaed

对啊 双指针啊,傻逼了。
回复 支持 反对

使用道具 举报

catinclay 发表于 2016-12-1 03:19:56 | 显示全部楼层
wilsonli 发表于 2016-12-1 03:13
overhead指的是memory overhaed

对啊 双指针啊,傻逼了。
. 鍥磋鎴戜滑@1point 3 acres
memory的overhead的话...
先假设是hashset. from: 1point3acres.com/bbs
首先要先看开了多少buckets给这个set使用 然后假设collision是用linkedlist的方式处理 最大的情况会是O(m+n), m = buckets size, n = number of elements.1point3acres缃
不确定对不对

BTW
这样的表现是一面的话我认为会加面 如果本来就是加面了...可能就要看运气了

补充内容 (2016-12-1 03:21):.鐣欏璁哄潧-涓浜-涓夊垎鍦
m = number of buckets 这样说应该比较对
回复 支持 反对

使用道具 举报

leixiang5 发表于 2016-12-1 03:45:25 | 显示全部楼层
overhead???unorder_set跟什么比啊? order_set吗?
回复 支持 反对

使用道具 举报

 楼主| wilsonli 发表于 2016-12-1 03:50:05 | 显示全部楼层
catinclay 发表于 2016-12-1 03:19
memory的overhead的话.... 1point3acres.com/bbs
先假设是hashset. visit 1point3acres.com for more.
首先要先看开了多少buckets给这个set使用 然后假设collision ...

你的回答我服。
回复 支持 反对

使用道具 举报

 楼主| wilsonli 发表于 2016-12-1 03:50:32 | 显示全部楼层
leixiang5 发表于 2016-12-1 03:45
overhead???unorder_set跟什么比啊? order_set吗?

不是跟什么比,就是本身在存object的时候的overhead
回复 支持 反对

使用道具 举报

leixiang5 发表于 2016-12-1 03:59:48 | 显示全部楼层
wilsonli 发表于 2016-12-1 03:50
不是跟什么比,就是本身在存object的时候的overhead
-google 1point3acres
- -...只会跟什么比才存在overhead吧...比如linkedlist在跟array比较下的overhead是pointers..
anyway...也许overhead是pointer???
回复 支持 反对

使用道具 举报

chestnut9919 发表于 2016-12-1 04:23:37 | 显示全部楼层
catinclay 发表于 2016-12-1 03:12
第一问的overhead是指时间复杂度吗?

第二问应该是用双指针可以O(n)解

双指针怎么O(N)? 不是也要N^2吗
回复 支持 反对

使用道具 举报

catinclay 发表于 2016-12-1 04:28:24 | 显示全部楼层
chestnut9919 发表于 2016-12-1 04:23
双指针怎么O(N)? 不是也要N^2吗

假定指针l跟r
sum = nums[l] + nums[r]. 1point3acres.com/bbs
判断sum跟target的关系

要是sum <= target, 代表从l+1到r的数都能跟l的数成为一个小于sum的pair
所以res直接+=r-l 然后l往右移动一格

若是sum > target, 就是r往左一格
. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
每个数最多被l或是r给access一次 所以时间复杂度是O(n)

补充内容 (2016-12-1 04:29): 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
一直作到l == r
回复 支持 反对

使用道具 举报

chestnut9919 发表于 2016-12-1 04:31:11 | 显示全部楼层
catinclay 发表于 2016-12-1 04:28
假定指针l跟r
sum = nums[l] + nums[r]. from: 1point3acres.com/bbs
判断sum跟target的关系

如果sum<target,res+=r-l之后,下一次l还要往右移动一个,在这一层r还要从最后开始算,所以还是N^2啊. visit 1point3acres.com for more.

补充内容 (2016-12-1 04:32):. from: 1point3acres.com/bbs
这个有点像LC259,3 sum smaller
回复 支持 反对

使用道具 举报

catinclay 发表于 2016-12-1 04:41:42 | 显示全部楼层

关键就是r不用从头

补充内容 (2016-12-1 04:42):
應該說l+1之後 r不用從最後面重新算

你用個test case跑跑看就知道了
回复 支持 反对

使用道具 举报

chestnut9919 发表于 2016-12-1 04:42:20 | 显示全部楼层
catinclay 发表于 2016-12-1 04:28. 1point 3acres 璁哄潧
假定指针l跟r
sum = nums[l] + nums[r]
判断sum跟target的关系
.鏈枃鍘熷垱鑷1point3acres璁哄潧
啊我明白了,r不用从最后走了,一直往左移动就行了,确实是O(N)
回复 支持 反对

使用道具 举报

MulinZz 发表于 2016-12-1 04:57:09 | 显示全部楼层
感觉题不难啊,为什么过的可能性不大啊
回复 支持 反对

使用道具 举报

garycheck 发表于 2016-12-20 08:27:23 | 显示全部楼层
求问怎么请求加面啊
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-11-24 23:03

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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