一亩三分地论坛

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

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

Linkedin phone interview

[复制链接] |试试Instant~ |关注本帖
mututu 发表于 2016-10-8 13:26:12 | 显示全部楼层 |阅读模式

2016(7-9月) 码农类 硕士 全职@Linkedin - 内推 - 技术电面 |Fail在职跳槽

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

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

x
题目是Shortest Word Distance. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴

followup: two word distance 改成three word distance, 目的是让三个word相互之间的distance和最小. visit 1point3acres.com for more.

最优解当场没想出来,当场想到的是two pointer往里收缩。每次移动left/right pointer中一个,直到停在三个target word中的一个。每挪动其中一个ponter,检查第三个word存不存在two pointer之间。时间复杂度的话,不用额外的memory,应该是O(n^2)吧

最优解应该只需要从左往右走一边就行。

评分

2

查看全部评分

XavierWangXY 发表于 2016-10-8 13:35:44 | 显示全部楼层
从左往右 分别记录三个word最后出现的index 然后 distance和 取最大值?
回复 支持 反对

使用道具 举报

 楼主| mututu 发表于 2016-10-8 13:38:14 | 显示全部楼层
嗯,应该是的
回复 支持 反对

使用道具 举报

say543 发表于 2016-10-8 14:26:21 | 显示全部楼层


如果w1 w2 w3 都重复 要输出为0吗? 最近也要面linkedlin 怕没坑了 thanks 指教....
回复 支持 反对

使用道具 举报

bbsbbstry 发表于 2016-10-8 23:21:28 | 显示全部楼层
请问楼主怎么拿到的面试啊
回复 支持 反对

使用道具 举报

 楼主| mututu 发表于 2016-10-9 05:55:17 | 显示全部楼层
say543 发表于 2016-10-8 14:26
如果w1 w2 w3 都重复 要输出为0吗? 最近也要面linkedlin 怕没坑了 thanks 指教....
-google 1point3acres
当时有想到duplicate的问题,跟面试官讨论,说先不考虑duplicate,写完再加。后来写完代码时间差不多, 就没考虑duplicate
回复 支持 反对

使用道具 举报

 楼主| mututu 发表于 2016-10-9 05:55:31 | 显示全部楼层
bbsbbstry 发表于 2016-10-8 23:21
请问楼主怎么拿到的面试啊
. Waral 鍗氬鏈夋洿澶氭枃绔,
找同学的同学refer的
回复 支持 反对

使用道具 举报

bananapancake 发表于 2016-10-9 10:35:57 | 显示全部楼层
不懂,这个三个词的做法和两个词的做法能有不同吗?应该是一样的啊
回复 支持 反对

使用道具 举报

say543 发表于 2016-10-9 13:51:10 | 显示全部楼层
mututu 发表于 2016-10-9 05:55
当时有想到duplicate的问题,跟面试官讨论,说先不考虑duplicate,写完再加。后来写完代码时间差不多,  ...


谢楼主 如果没有duplicate 扫依次 因该能说 , 有duplicate就相对麻烦了. 1point 3acres 璁哄潧
  有可能w1 =w2 or w2 =w3 就看题目怎分析了
回复 支持 反对

使用道具 举报

virpro 发表于 2016-10-13 06:15:15 | 显示全部楼层
bananapancake 发表于 2016-10-9 10:35
不懂,这个三个词的做法和两个词的做法能有不同吗?应该是一样的啊

对啊,就是update index的时候麻烦一点,方法是一样的吧。
回复 支持 反对

使用道具 举报

say543 发表于 2016-10-13 14:36:04 | 显示全部楼层
virpro 发表于 2016-10-13 06:15
对啊,就是update index的时候麻烦一点,方法是一样的吧。

能上个考虑w1=w2 or w1=w2=w3 的代码吗? thanls 思路有点乱...
回复 支持 反对

使用道具 举报

say543 发表于 2016-10-14 02:44:12 | 显示全部楼层
  1.   public int shortestDistance(String[] words, String word1, String word2, String word3) {. visit 1point3acres.com for more.

  2.         //preid is needed to duplicate case
  3.         int w1_preid = -1;
  4.         int w2_preid = -1; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  5.         int w3_preid = -1;. more info on 1point3acres.com
  6.       
  7.         //curid
  8.         int w1_id = -1;
  9.         int w2_id = -1;
  10.         int w3_id = -1;
  11.       
  12.       
  13.         int min = Integer.MAX_VALUE;
  14.         for (int i = 0 ; i < words.length ; i++){. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  15.           . 鍥磋鎴戜滑@1point 3 acres
  16.           //update possilbe length
  17.           //only two the same [w1, w2] , [w2, w3], [w1, w3]
  18.           if (word1.equals(word2) && !word1.equals(word3) &&  words[i].equals(word3)){
  19. . 1point 3acres 璁哄潧
  20.             if (w1_preid != -1 && w1_id!= -1)
  21.               min = Math.min(i- w1_preid,  min);. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  22. 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  23.           }
  24.           else if (word1.equals(word3)  &&  !word1.equals(word2) && words[i].equals(word2)){

  25.             if (w1_preid != -1 && w1_id!= -1)
  26.               min = Math.min(i- w1_preid,  min);. From 1point 3acres bbs

  27.           }
  28.           else if (word2.equals(word3)  &&  !word2.equals(word1) && words[i].equals(word1)){. more info on 1point3acres.com
  29.             if (w2_preid != -1 && w2_id!= -1). Waral 鍗氬鏈夋洿澶氭枃绔,
  30.               min = Math.min(i- w2_preid,  min);
  31.           } 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  32.           // all the same
  33.           // order does not matter but three different are necessary
  34.           else if (word1.equals(word2)  &&  word2.equals(word3) && words[i].equals(word1)){. From 1point 3acres bbs
  35.             if (w1_preid != -1 && w1_id!= -1). Waral 鍗氬鏈夋洿澶氭枃绔,
  36.               min = Math.min(i- w1_preid,  min);. visit 1point3acres.com for more.
  37.           }
  38.           // all different
  39.           else if (words[i].equals(word1)){
  40.             if (w2_id != -1 && w3_id!= -1)
  41.               min = Math.min(i- Math.min(w2_id, w3_id), min);
  42.           }
  43.           else if (words[i].equals(word2)){
  44.             if (w1_id != -1 && w3_id!= -1)
  45.               min = Math.min(i- Math.min(w1_id, w3_id), min);
  46.           }.1point3acres缃
  47.           else if (words[i].equals(word3)){
  48.             if (w1_id != -1 && w2_id!= -1)
  49.               min = Math.min(i- Math.min(w1_id, w2_id), min);. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  50.           }
  51.          
  52.           . visit 1point3acres.com for more.
  53.           //update cur index to id /preid. more info on 1point3acres.com
  54.           if (words[i].equals(word1)){
  55.             w1_preid = w1_id;
  56.             w1_id = i;
  57.           }
  58.           if (words[i].equals(word2)){
  59.             w2_preid = w2_id; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  60.             w2_id = i;
  61.           }
  62.           if (words[i].equals(word3)){
  63.             w3_preid = w3_id;. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  64.             w3_id = i;
  65.           }
    . more info on 1point3acres.com

  66.         }
  67.         return min;
  68.     }
复制代码
. from: 1point3acres.com/bbs
. visit 1point3acres.com for more.
写了个代码considering duplication 有点complicate 有错烦指正
回复 支持 反对

使用道具 举报

1451427216 发表于 2016-11-1 08:01:38 | 显示全部楼层
求问楼主进到下一轮了吗
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2016-11-8 08:14:25 | 显示全部楼层
额,  不是每次都让最小的那个index向右移动不就好了?
回复 支持 反对

使用道具 举报

say543 发表于 2016-11-8 13:53:15 | 显示全部楼层
小A要当码农 发表于 2016-11-8 08:14
额,  不是每次都让最小的那个index向右移动不就好了?


能上个代码吗? follow up 有更好的想法?
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2016-11-9 00:58:14 | 显示全部楼层
say543 发表于 2016-11-8 13:53
能上个代码吗? follow up 有更好的想法?

我写一下,写好了贴上来。。
回复 支持 反对

使用道具 举报

susand33 发表于 2016-11-9 01:17:15 | 显示全部楼层
LZ是面New Grad么?
回复 支持 反对

使用道具 举报

say543 发表于 2016-11-9 16:36:48 | 显示全部楼层
小A要当码农 发表于 2016-11-9 00:58 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
我写一下,写好了贴上来。。


thanks 觉得我的code 有点complicate 但是我没有好的做法..
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2017-1-17 17:21

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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