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

Linkedin phone interview

全局:

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

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

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

x
题目是Shortest Word Distance

followup: two word distance 改成three word distance, 目的
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
用额外的memory,应该是O(n^2)吧

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

评分

参与人数 2大米 +33 收起 理由
1451427216 + 3 感谢分享!
whdawn + 30

查看全部评分


上一篇:Fitbit店面
下一篇:10.07 Amazon OA2
推荐
say543 2016-10-14 02:44:12 | 只看该作者
全局:
  1.   public int shortestDistance(String[] words, String word1, String word2, String word3) {

  2.         //preid is needed to duplicate case
  3.         int w1_preid = -1;
  4.         int w2_preid = -1;
  5.         int w3_preid = -1;
  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.          
  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.             if (w1_preid != -1 && w1_id!= -1)
  20.               min = Math.min(i- w1_preid,  min);

  21.           }
  22.           else if (word1.equals(word3)  &&  !word1.equals(word2) && words[i].equals(word2)){

  23.             if (w1_preid != -1 && w1_id!= -1)
  24.               min = Math.min(i- w1_preid,  min);

  25.           }
  26.           else if (word2.equals(word3)  &&  !word2.equals(word1) && words[i].equals(word1)){
  27.             if (w2_preid != -1 && w2_id!= -1)
  28.               min = Math.min(i- w2_preid,  min);
  29.           }
  30.           // all the same
  31.           // order does not matter but three different are necessary
  32.           else if (word1.equals(word2)  &&  word2.equals(word3) && words[i].equals(word1)){
  33.             if (w1_preid != -1 && w1_id!= -1)
  34.               min = Math.min(i- w1_preid,  min);
  35.           }
  36.           // all different
  37.           else if (words[i].equals(word1)){
  38.             if (w2_id != -1 && w3_id!= -1)
  39.               min = Math.min(i- Math.min(w2_id, w3_id), min);
  40.           }
  41.           else if (words[i].equals(word2)){
  42.             if (w1_id != -1 && w3_id!= -1)
  43.               min = Math.min(i- Math.min(w1_id, w3_id), min);
  44.           }
  45.           else if (words[i].equals(word3)){
  46.             if (w1_id != -1 && w2_id!= -1)
  47.               min = Math.min(i- Math.min(w1_id, w2_id), min);
  48.           }
  49.          
  50.          
  51.           //update cur index to id /preid
  52.           if (words[i].equals(word1)){
  53.             w1_preid = w1_id;
  54.             w1_id = i;
  55.           }
  56.           if (words[i].equals(word2)){
  57.             w2_preid = w2_id;
  58.             w2_id = i;
  59.           }
  60.           if (words[i].equals(word3)){
  61.             w3_preid = w3_id;
  62.             w3_id = i;
  63.           }

  64.         }
  65.         return min;
  66.     }
复制代码


写了个代码considering duplication 有点complicate 有错烦指正
回复

使用道具 举报

推荐
say543 2016-10-9 13:51:10 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

推荐
 楼主| mututu 2016-10-9 05:55:17 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

🔗
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:31 | 只看该作者
全局:
bbsbbstry 发表于 2016-10-8 23:21
请问楼主怎么拿到的面试啊

找同学的同学refer的
回复

使用道具 举报

🔗
bananapancake 2016-10-9 10:35:57 | 只看该作者
全局:
不懂,这个三个词的做法和两个词的做法能有不同吗?应该是一样的啊
回复

使用道具 举报

🔗
virpro 2016-10-13 06:15:15 | 只看该作者
全局:
bananapancake 发表于 2016-10-9 10:35
不懂,这个三个词的做法和两个词的做法能有不同吗?应该是一样的啊

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

使用道具 举报

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

本版积分规则

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