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

狗家SETI阳谷上门

全局:

2019(4-6月) 码农类General 硕士 全职@google - 猎头 - Onsite  | | Other | 在职跳槽

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

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

x
这周面的狗家SETI, 阳谷县办公室。

第一轮 45mins: 蠡口散妖雾 +  test case。

第二轮 45mins:
第一题:
一个数组,只有RGB三色, arr={R,R,G,R,B,G,G,B,B...} 实现函数 query (index, targetColor) 返回离index最近的targetColor的距离。比如query(1,B)就是离arr[1]最近的B的距离是3。query会用很多次,要求是O(1).
Follow up: 2D array, 和上
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
angman。





补充内容 (2019-5-13 02:27):
觉得有用的,求加大米,加大米不会扣你自己大米的。谢谢啦!地里朋友们加油~

补充内容 (2019-5-19 04:47):
被HC给拒了,应该是第一轮第二轮都没答好。明年再战~

评分

参与人数 23大米 +27 收起 理由
cwwmoment + 2 很详细,谢谢
Gaussiang + 1 很有用的信息!
zplinti1 + 1 很有用的信息!
zqc764487 + 1 赞一个!
hope2019 + 1 很有用的信息!

查看全部评分


上一篇:亚麻昂塞5月7日
下一篇:亚麻5月12 社招OA

本帖被以下淘专辑推荐:

推荐
zplinti1 2019-5-17 22:22:53 | 只看该作者
全局:
第二轮第一题,我来细说下解法:

一维:

解法1:
对于RGB三种颜色,针对每种颜色X,对数组进行两次扫描。第一次是从左往右扫描,可以得到某个位置i,左边离的最近的X的位置是多少-left[X][i]。从右往左扫描,可以得到right[X][i]。
当查询 query (index, targetColor),返回 Math.min(index-left[targetColor][index], right[targetColor][index] - index)

解法2:
对于RGB三种颜色,针对每种颜色X,进行BFS。具体流程是:
1. 有一个二维数组minDis[X][i], 表示对于颜色X,在位置i查询的话,最近的点距离是多少。初始化无穷大。
2. 把当前颜色全部找出来,放入队列,队列里每个点存的信息是(Position, Step)。初始时加入点的Step都是0. 同时更新minDis[X][Position] = 0;
3. 取出队头里的一个元素,node =(Position, Step), 判断结点Position +1, 和结点 Position - 1 是否没访问过,如果没有访问过,则加入队列中。加入的节点的Step = node.step + 1。同时更新minDis。

查询时,直接返回minDis[X][Position]。

二维:
解法:是一维的解法2一样,只是把Position的信息改成2维。拓展时,可以向4个方向拓展。


评分

参与人数 1大米 +3 收起 理由
zsz1990ustc + 3 看懂了,谢谢大神!

查看全部评分

回复

使用道具 举报

推荐
MrQuin33 2019-5-14 10:39:33 | 只看该作者
全局:
大雷若潘 发表于 2019-5-14 09:45
如果是往左右扫的话 时间就不是O(1)了吧  我以为要新建一个hash table什么的 这样query的时候时间是O(1). ...

我感觉楼主的意思是
初始颜色数组是固定的
所以从左到又扫一遍, 从右到左扫一遍之后你就知道每个位置最近的 RGB 在哪了, 把结果保存好.
然后每次 query 直接返回就行, 这就是 O(1)
不过如果初始数组是变动的我就没办法了.

2d 的同样, 对每个位置做 BFS 找到离当前最近的颜色快,
然后 query 的时候直接返回就好.

第一面的 hard 题 真心给跪......
回复

使用道具 举报

推荐
 楼主| zsz1990ustc 2019-5-14 09:32:02 | 只看该作者
全局:
大雷若潘 发表于 2019-5-14 08:45
求问楼主 第二轮要求O(1) 是时间和空间都是O(1)吗? 求分享思路

第二轮第一题RGB那个吗?query不用空间的吧,initialize会用不少空间时间。讲真,我只会一维的,从左向右扫一遍,从右往左扫一遍,就知道离R最近的左右的G和B了,比较暴力。二维的我还是这样暴力扫,面试官说不行,提示是BFS。我想到了人和自行车那题,但还是不会,所以面试官才给第二题让我做[捂脸]。地里朋友们有思路的,求告诉我哈~
回复

使用道具 举报

全局:
求问第三轮那题怎么解?
回复

使用道具 举报

全局:
楼主可以回忆一下狗家BQ都问了什么?该怎么准备呢   谢谢啦
回复

使用道具 举报

全局:
LZ的描述清晰具体,谢谢
回复

使用道具 举报

🔗
kainJLDE 2019-5-14 03:05:47 | 只看该作者
全局:
厉害的面经!!
回复

使用道具 举报

🔗
大雷若潘 2019-5-14 08:45:21 | 只看该作者
全局:
求问楼主 第二轮要求O(1) 是时间和空间都是O(1)吗? 求分享思路
回复

使用道具 举报

🔗
 楼主| zsz1990ustc 2019-5-14 09:25:55 | 只看该作者
全局:
TTTWangTingting 发表于 2019-5-14 02:01
楼主可以回忆一下狗家BQ都问了什么?该怎么准备呢   谢谢啦

和亚麻的类似,就是如果和同事有不同意见怎么办,对现在老板有什么意见,做过的有挑战的项目是什么等等。不过比亚麻好一点,的确是要举例子,但不会往深处挖,不过例子也要详细合理。
回复

使用道具 举报

🔗
 楼主| zsz1990ustc 2019-5-14 09:27:51 | 只看该作者
全局:
shawnzhao 发表于 2019-5-13 22:23
求问第三轮那题怎么解?

我把第三轮的饭店书店什么的,看做第二轮第一问的RGB, 嘿嘿,然后题目就变一样了。感觉跟人和自行车那题类似。
回复

使用道具 举报

🔗
大雷若潘 2019-5-14 09:45:16 | 只看该作者
全局:
zsz1990ustc 发表于 2019-5-14 09:32
第二轮第一题RGB那个吗?query不用空间的吧,initialize会用不少空间时间。讲真,我只会一维的,从左向右 ...

如果是往左右扫的话 时间就不是O(1)了吧  我以为要新建一个hash table什么的 这样query的时候时间是O(1).
看了你第一轮的题就吓尿了 上来就一道hard题 两周后要昂赛的我好方啊
回复

使用道具 举报

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

本版积分规则

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