一亩三分地论坛

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

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

这就是命……

[复制链接] |试试Instant~ |关注本帖
神罗天征 发表于 2015-11-18 12:35:49 | 显示全部楼层 |阅读模式

2016(10-12月) 码农类 硕士 实习@Facebook - 校园招聘会 - Onsite |Failfresh grad应届毕业生

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

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

x
六人onsite小分队,跪了四个……另一个哥们的面经http://www.1point3acres.com/bbs/ ... id%3D311#pid2068421. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷

侥幸过了oncampus, onsite一下就暴露了。
转专业第一学期,onsite面试官以上就说,你的简历很短啊……废话,我一个转专业的能长到哪去啊!!废话不多了
直接上题:给两个file,分别存有key和value,目标就是把相同的key合并在一起输出,比如file1里面有 ben 2, file2里有 ben SB,那就合并成ben 2 SB, 两个file很大,不许用Map
我的题我第一次见,其他小伙伴的……我都会啊!!除了链接那一题……
比如one edit distance, 三哥的题
Task time,就是给定ABDCABD, 还有cooltime,求时间,follow up 可以换顺序,就是greedy(两个小伙伴是同一道题)
.鏈枃鍘熷垱鑷1point3acres璁哄潧verctor dot product;
一个平面给出一堆点,找出距离某点最近的几个点……听说面试官觉得priorityqueue不好……要求对x,y坐标排序
还有Group Contact ,贴上自己找到的答案
  1. public static void main(String[] args) {
  2.     HashMap<String, Integer> h = new HashMap(); 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  3.         String[][] A = { { "John", "john@gmail.com", "john@fb.com"},
  4.                                 { "Dan", "dan@gmail.com", "+1234567"},
  5.                                 {"john123", "+5412312", "john123@skype.com"},
  6.                                 { "john1985", "+5412312", "john@fb.com"}  };. 1point 3acres 璁哄潧
  7.                
  8.         int code = 0;
  9.         for(int i = 0; i < A.length; i++) {. 鍥磋鎴戜滑@1point 3 acres
  10.                 int c = -1;
  11.         Set<Integer> groupings = new HashSet<Integer>();
  12.                 for(int j = 0; j < A[i].length; j++) {
  13.                         String s = A[i][j];. from: 1point3acres.com/bbs
  14.                         if(h.containsKey(s)){
  15.                 int value=h.get(s);
  16.                                 grouping.add(value);. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  17.                                 c = Math.min(c,value);
  18.             }. more info on 1point3acres.com
  19.                 }
  20.                 if(c == -1){
  21.                         c = code++;. visit 1point3acres.com for more.
  22.                 }
  23.         else{
  24.             groupings.remove(c);
  25.             for(Integer k : groupings ){
  26.                 for(int m=0;m<A[0].length;m++){
  27.                     h.put(A[k][m],c);
  28.                 }
  29.             }
  30.         }
  31.         for(int j = 0; j < A[i].length; j++){
  32.                         String s = A[i][j];
  33.                         h.put(s,  c);
    . 1point 3acres 璁哄潧
  34.                 }
  35.         }
  36.         for(int i = 0; i < A.length; i++) {
  37.                 System.out.println(h.get(A[i][0]));
  38.         }
  39.         }
复制代码
总的来说,对我这种基础不好的人来说,面试就是三分靠实力,九十七分靠运气……别人的我都会,我自己的不太会……继续刷题准备明天找fulltime了. From 1point 3acres bbs
大家加油!!

评分

3

查看全部评分

本帖被以下淘专辑推荐:

eko910817 发表于 2016-2-1 09:54:31 | 显示全部楼层
两个文件的key已经排好序的话应该双指针跑一下就好了?  一个文件维持一个指针,对比key是不是相等,不相等的话,小的那边自增一下。找到相等的key就输出一下。  用string的compareTo来比较key的字典序大小

评分

1

查看全部评分

回复 支持 3 反对 0

使用道具 举报

zhuhai_ZFC 发表于 2016-9-1 22:51:29 | 显示全部楼层
个人觉得第一题的应该是:如果关键字已经排序,就用two pointers搞定;如果关键字是乱序的,那么如果为了节省空间而不允许用hashmap的话,则自己定义一个Trie,Trie的节点存三个值:子节点集合(长度为26的指针数组)、是否为单词结尾的标志位、关键字对应的值。其中关键字对应的值只有在该节点为单词结尾的时候有效。把第一个文件中的关键字全部加入到Trie中,再把第二个文件中的单词拿到Trie中查找就好了。Trie比hashmap更省空间是因为,Trie合并了大量前缀相同的条目,hashmap做不到这点。
回复 支持 1 反对 0

使用道具 举报

小A要当码农 发表于 2015-11-19 05:30:12 | 显示全部楼层
楼主能把题目再说的明白一些嘛? 具体的input和output应该是什么呢? 谢谢
回复 支持 反对

使用道具 举报

abc235153452 发表于 2015-11-19 07:47:19 | 显示全部楼层
我就是那个和另外一个小伙伴是同一个题的 倒霉蛋。。。他拿到了offer,而我现在是什么信息都没有
回复 支持 反对

使用道具 举报

 楼主| 神罗天征 发表于 2015-11-19 16:23:39 | 显示全部楼层
小A要当码农 发表于 2015-11-19 05:30
楼主能把题目再说的明白一些嘛? 具体的input和output应该是什么呢? 谢谢

哪一个题的?
回复 支持 反对

使用道具 举报

 楼主| 神罗天征 发表于 2015-11-19 16:24:54 | 显示全部楼层
abc235153452 发表于 2015-11-19 07:47
我就是那个和另外一个小伙伴是同一个题的 倒霉蛋。。。他拿到了offer,而我现在是什么信息都没有
. more info on 1point3acres.com
AT大神不要担心,你还有更好的!
回复 支持 反对

使用道具 举报

annawuyi 发表于 2015-11-19 17:08:29 | 显示全部楼层
楼主转专业第一学期就找工作了,请问楼主毕业时间?感觉自己转专业一学期还没有学很多课程,题目也不太好刷。简历都是CS的内容吗?很强啊。谢谢
回复 支持 反对

使用道具 举报

ldpraymond 发表于 2015-11-19 21:24:32 | 显示全部楼层
有点坑哈。
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
求第一题正解。BST 是可以接受的答案嘛。。。
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2015-11-19 23:25:04 | 显示全部楼层

就是你那个题呀,file是咋表示的?
回复 支持 反对

使用道具 举报

 楼主| 神罗天征 发表于 2015-11-20 01:28:20 | 显示全部楼层
小A要当码农 发表于 2015-11-19 23:25-google 1point3acres
就是你那个题呀,file是咋表示的?
. visit 1point3acres.com for more.
就是两个file, 每个都是key-value的形式比如
ben 25
alice 36 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
mike 70

第二个文件是
alice good
mary bad

然后输出alice 25 good, 就是把相同的key的结合在一起,就是hadoop里面常用的join……
回复 支持 反对

使用道具 举报

 楼主| 神罗天征 发表于 2015-11-20 01:31:40 | 显示全部楼层
annawuyi 发表于 2015-11-19 17:08
楼主转专业第一学期就找工作了,请问楼主毕业时间?感觉自己转专业一学期还没有学很多课程,题目也不太好刷 ...
. 鍥磋鎴戜滑@1point 3 acres
我是17年summer毕业~我的简历有关cs的很少,当时面试官就说你的简历太短了……不过也要投一投试试啊,facebook就是当时career fair瞎投的,然后给了oncampus面试,同时也要多刷题
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2015-11-20 02:24:14 | 显示全部楼层
神罗天征 发表于 2015-11-20 01:28
就是两个file, 每个都是key-value的形式比如
ben 25
alice 36

file是以String[]的形式嘛?还是给了一个Iterator呀? 你给的代码中String[][] A是啥意思额? 麻烦啦
回复 支持 反对

使用道具 举报

 楼主| 神罗天征 发表于 2015-11-20 02:27:57 | 显示全部楼层
小A要当码农 发表于 2015-11-20 02:24. 鍥磋鎴戜滑@1point 3 acres
file是以String[]的形式嘛?还是给了一个Iterator呀? 你给的代码中String[][] A是啥意思额? 麻烦啦

那个代码是另一个美国同学的面试题,我准备过的代码。
就是两个file,要自己读取,我就用的scanner读取的
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2015-11-20 03:00:59 | 显示全部楼层
神罗天征 发表于 2015-11-20 02:27
那个代码是另一个美国同学的面试题,我准备过的代码。
就是两个file,要自己读取,我就用的scanner读取 ...

读取以后,存到String[][]里面,然后再排序这样子么?
回复 支持 反对

使用道具 举报

 楼主| 神罗天征 发表于 2015-11-20 03:12:53 | 显示全部楼层
小A要当码农 发表于 2015-11-20 03:00
读取以后,存到String[][]里面,然后再排序这样子么?

. From 1point 3acres bbs不是,我的题就直接读取,不能储存。
给出代码的那道题,可能我没说清楚,他是给你一个string[][], 每一行表示是同一个人的信息,然后可能有同一个人有不同的信息,比如第三行和第四行,他们的电话号码一样,说明是同一个人,即使邮箱和昵称不一样,然后把第三行和第四行的归为一个组,最后输出[0,2,3][3],表示string[0][]/[2][]/[3][]是同一个人,string[1]是一个人。
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2015-11-20 03:53:37 | 显示全部楼层
神罗天征 发表于 2015-11-20 03:12
不是,我的题就直接读取,不能储存。
给出代码的那道题,可能我没说清楚,他是给你一个string[][], 每一 ...

嗯。多谢解释啦。 那你那道题应该怎么做呢?还是不太懂, 感觉好奇葩。。能事先将File中的每一个key-value对按照key字母排序嘛?
回复 支持 反对

使用道具 举报

 楼主| 神罗天征 发表于 2015-11-20 04:11:18 | 显示全部楼层
小A要当码农 发表于 2015-11-20 03:53
嗯。多谢解释啦。 那你那道题应该怎么做呢?还是不太懂, 感觉好奇葩。。能事先将File中的每一个key-valu ...

对了,里面已经事先按照字母顺序排好了
回复 支持 反对

使用道具 举报

 楼主| 神罗天征 发表于 2015-11-20 04:12:50 | 显示全部楼层
小A要当码农 发表于 2015-11-20 03:53
嗯。多谢解释啦。 那你那道题应该怎么做呢?还是不太懂, 感觉好奇葩。。能事先将File中的每一个key-valu ...

我感觉就是我给他说了我正在学习hadoop,然后他就给了这道题,这道题其实就是hadoop里面常见的join
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2015-11-20 05:17:13 | 显示全部楼层
神罗天征 发表于 2015-11-20 04:12
我感觉就是我给他说了我正在学习hadoop,然后他就给了这道题,这道题其实就是hadoop里面常见的join

好吧。 摸摸楼主,move on吧,接下来的面试好运啦
回复 支持 反对

使用道具 举报

 楼主| 神罗天征 发表于 2015-11-20 05:23:45 | 显示全部楼层
小A要当码农 发表于 2015-11-20 05:17
好吧。 摸摸楼主,move on吧,接下来的面试好运啦

希望你们遇到原题!干掉FB!
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2015-11-20 05:41:49 | 显示全部楼层
神罗天征 发表于 2015-11-20 05:23
希望你们遇到原题!干掉FB!

haha 多谢,group contact那题,我跑了一下你的程序,输出是1,2,3,4啊。不懂这个输出。。 是不是应该把17行的Math.min改成max?
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-4 10:29

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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