📣 VIP通行证夏日特惠 限时立减$68
回复: 9
跳转到指定楼层
上一主题 下一主题
收起左侧

狗家店面,发面经攒人品顺便求大米

全局:

2019(4-6月) 码农类General 硕士 全职@google - Other - 技术电面  | | Other | 在职跳槽

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

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

x
发面经赞人品吧。也不知道能不能过。 但是我尽力了。
我知道和大神是不能相比的。

狗家是不可能考leetcode原题的。但是觉得可以找到同类型的。
这次电面是一道图题。
题目如下:

解法是:哈希表构建图+dfs。




补充内容 (2019-5-27 15:43)
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
oms的index

补充内容 (2019-5-30 06:08):
再补充一点吧,炸弹爆炸范围就是一个圆形半径,不是沿x、y轴方向。就是计算两点间的距离。

评分

参与人数 9大米 +20 收起 理由
水鬼田 + 2 给你点个赞!
SandmanSeven + 1 给你点个赞!
黎明之前 + 2 赞一个!
starzero + 1 给你点个赞!
LionelWang + 1 给你点个赞!

查看全部评分


上一篇:空气床店面
下一篇:blackrock香港machine learning onsite

本帖被以下淘专辑推荐:

🔗
LionelWang 2019-5-29 14:17:47 | 只看该作者
全局:
楼主,你的题目看不懂啊,可以给个例子吗
回复

使用道具 举报

🔗
zhiyazw 2019-5-29 18:14:47 | 只看该作者
全局:
我写了一个邻接表图+BFS的方案,大家看看有没有什么bug和提高

  1.         boolean bomb(List<List<Integer>> bombs, int r, List<Integer> from, List<Integer> to) {

  2.                 int[][] dirs = new int[][]{{-1, 0}, {1, 0}, {0, -1}, {0, 1}};

  3.                 // construct graph
  4.                 HashMap<List<Integer>, List<List<Integer>>> adjList = new HashMap<>();
  5.                 for (List<Integer> bomb : bombs) {

  6.                         List<List<Integer>> edges = new LinkedList<>();
  7.                         for (int i = 1; i <= r; i++) {
  8.                                 for (int[] dir : dirs) {
  9.                                         List<Integer> other = Arrays.asList(bomb.get(0) + i * dir[0], bomb.get(1) + i * dir[1]);
  10.                                         if(adjList.containsKey(other)) {
  11.                                                 edges.add(other);
  12.                                                 adjList.get(other).add(bomb);
  13.                                         }
  14.                                 }
  15.                         }
  16.                 }
  17.                        
  18.                 HashSet<List<Integer>> bombed = new HashSet<>();
  19.                 Queue<List<Integer>> queue = new LinkedList<List<Integer>>();
  20.                 queue.offer(from);
  21.                 while (queue.size() > 0) {
  22.                
  23.                         List<Integer> cur = queue.poll();
  24.                         if(cur.equals(to)) {
  25.                                 return true;
  26.                         }
  27.                         bombed.add(cur);
  28.                        
  29.                         List<List<Integer>> edges = adjList.get(cur);
  30.                         for (List<Integer> other : edges) {
  31.                                 if (!bombed.contains(other)) {
  32.                                         queue.offer(other);
  33.                                 }
  34.                         }
  35.                        
  36.                 }
  37.                 return false;
  38.         }
复制代码

回复

使用道具 举报

🔗
helloteacha 2019-5-29 20:28:42 | 只看该作者
全局:
请问:题目的意思是不是boom.get(Start)这个位置的炸弹可以引爆下一个位置的炸弹(within range of d),直到引爆boom.get(end)位置的炸弹?谢谢!
回复

使用道具 举报

🔗
helloteacha 2019-5-29 20:32:56 | 只看该作者
全局:
zhiyazw 发表于 2019-5-29 18:14
我写了一个邻接表图+BFS的方案,大家看看有没有什么bug和提高
[mw_shl_code=java,true]
        boolean bomb(Li ...

请问你的这个代码是不是只能炸沿X或者Y方向距离为R范围内的点? 谢谢!
回复

使用道具 举报

🔗
zhiyazw 2019-5-29 20:53:16 | 只看该作者
全局:
zorrowei 发表于 2019-5-29 20:32
请问你的这个代码是不是只能炸沿X或者Y方向距离为R范围内的点? 谢谢!

你说的对,没包含对角线,需要跟面试官确认这个case。
如果要包含对角线,可以增加一组directions = {{-1, -1}, {-1, 1}, {1, -1}, {1, 1}}, 在1<=i<r的范围内扫描
回复

使用道具 举报

🔗
LionelWang 2019-5-30 00:31:51 | 只看该作者
全局:
这题应该可以变成求图里两个点start,end是否可以连通
dfs能解
麻烦的是第一步,要每个点去查其他点是否在半径里,是的话构造edge,
有了所有的edge hashmap,dfs就简单了
回复

使用道具 举报

🔗
LionelWang 2019-5-30 00:33:25 | 只看该作者
全局:
zhiyazw 发表于 2019-5-29 20:53
你说的对,没包含对角线,需要跟面试官确认这个case。
如果要包含对角线,可以增加一组directions = {{- ...

其实如果查两个点是否在半径里,用x^2+y^2这么算,无所谓对角线斜线,都能支持
回复

使用道具 举报

🔗
MrQuin33 2019-5-30 01:13:21 | 只看该作者
全局:
楼主你题目看不见了啊
回复

使用道具 举报

🔗
yangmyfly 2019-5-30 02:06:36 | 只看该作者
全局:
不是求最短路,没必要bfs
回复

使用道具 举报

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

本版积分规则

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