回复: 21
跳转到指定楼层
上一主题 下一主题
收起左侧

热腾腾的Google面经

全局:

2016(7-9月) 码农类General 博士 全职@google - 内推 - HR筛选  | | Other | 在职跳槽

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
去他大爷的保密协议,趁着记忆还在写一个回馈大家
您好!
本帖隐藏的内容需要积分高于 388 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 388 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies

评分

参与人数 4大米 +44 收起 理由
leetcod_ + 3 很有用的信息!
zzwcsong + 30
vancexu + 10 感谢分享!
YJM1024 + 1 感谢分享!

查看全部评分


上一篇:求一个Hulu的60分钟OA面经
下一篇:有人收到 Vancouver Interview Event 的吗?

本帖被以下淘专辑推荐:

推荐
 楼主| hychin 2016-6-29 12:20:51 | 只看该作者
全局:
mengmeng88717 发表于 2016-6-29 11:59
TreeMap这样呢?
外层key是x,内层key是y

我觉得差不多,这应该是他expected的解法

换成C++就是用
map<int, map<int, int>> 外层k是x,内层k是y,最里层是value 加的话直接index到那个entry加  求和的话两层循环外层从mp.lowerbound(x1) 遍历到mp.upperbound(x2), 内层 从mp.lowerbound(y1) 遍历到 mp.lowerbound(y2)累加起来,还是学艺不精啊。。以后有机会再战了
回复

使用道具 举报

推荐
zyoppy008 2016-10-2 16:39:11 | 只看该作者
全局:
hychin 发表于 2016-6-29 12:20
我觉得差不多,这应该是他expected的解法

换成C++就是用

我想问一下 map套map可以, 那vector套vector不一样可以嘛。。。vector就保持sorted 插入的时候binary search插入 这样子貌似更快?内存找到index range可以直接累加 好像,c++ map iterator 移动复杂度并不是o(1) 这个我不确定,好像distance不是o(1) 因为他毕竟是树结构的, 两个index直接移动反而没有vector两个index直接移动快?

补充内容 (2016-10-2 16:45):
但是vector插入复杂度太高太坑爹了 综合来说还是map好 maybe
回复

使用道具 举报

全局:
第一题可以用treemap
1) add(x, y, value)  --> treemap.put(x * col + y, value)
2)   get sum(x1, y1, x2, y2) --> treemap.subMap(x1 * col + y1, true, x2 * col + y2) 然后遍历submap累加下结果

add是logn,getSum应该是这个range里实际存储了多少个值*logn
觉得这个题和稀疏矩阵乘法有点类似,原则就是不储存空值
欢迎讨论~

补充内容 (2016-6-29 10:19):
treemap.subMap(x1 * col + y1, true, x2 * col + y2, true)打漏了一个参数
回复

使用道具 举报

🔗
Chi2829 2016-6-29 05:37:13 | 只看该作者
全局:
请问楼主第一题用什么方法呢?我只能想到O(n)的方法了,n是有value的坐标的数目。谢谢!
回复

使用道具 举报

🔗
chenzhan171 2016-6-29 07:17:53 | 只看该作者
全局:
第一题用ArrayList + BIT ? 这样可以实现Add和get都是 O(logn)。
回复

使用道具 举报

🔗
readman 2016-6-29 09:44:26 | 只看该作者
全局:
chenzhan171 发表于 2016-6-29 07:17
第一题用ArrayList + BIT ? 这样可以实现Add和get都是 O(logn)。

fenwick树有范围的吧....
第一题我觉得Segment Tree 2D吧...不过代码写的时候没fenwick好写.. 但理论上来说fenwick能做的 线段树都能
回复

使用道具 举报

🔗
readman 2016-6-29 10:51:15 | 只看该作者
全局:
mengmeng88717 发表于 2016-6-29 10:19
第一题可以用treemap
1) add(x, y, value)  --> treemap.put(x * col + y, value)
2)   get sum(x1, y1 ...

请问, 不知道col的情况下...怎么做...第一题不是说没边界么..
回复

使用道具 举报

🔗
pustar 2016-6-29 10:52:46 | 只看该作者
全局:
第一题咋解啊?
回复

使用道具 举报

🔗
mengmeng88717 2016-6-29 11:24:33 | 只看该作者
全局:
readman 发表于 2016-6-29 10:51
请问, 不知道col的情况下...怎么做...第一题不是说没边界么..

我的理解是平面很大而有内存限制,请楼主澄清下知不知道col?
回复

使用道具 举报

🔗
 楼主| hychin 2016-6-29 11:48:25 | 只看该作者
全局:
mengmeng88717 发表于 2016-6-29 11:24
我的理解是平面很大而有内存限制,请楼主澄清下知不知道col?

不知道col的边界的,我画个原图给你看就明白了

一个这样子的平面
------------------------------------------------------------》 unlimit bound
|
|
|
|
|
|
|
|
|
回复

使用道具 举报

🔗
 楼主| hychin 2016-6-29 11:50:10 | 只看该作者
全局:
mengmeng88717 发表于 2016-6-29 11:24
我的理解是平面很大而有内存限制,请楼主澄清下知不知道col?

不知道col的边界的,我画个原图给你看就明白了

一个这样子的平面
------------------------------------------------------------》 unlimit bound
|
|
|
|
|
|
|
|
\|/
unlimit bound
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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