一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 2115|回复: 8
收起左侧

facebook 电面 3.2

[复制链接] |试试Instant~ |关注本帖
fsc111 发表于 2015-3-3 07:02:08 | 显示全部楼层 |阅读模式

2015(1-3月) 码农类 硕士 全职@Facebook - 内推 - 技术电面 |Other

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

您需要 登录 才可以下载或查看,没有帐号?获取更多干活,快来注册

x
Facebook 电面第一轮,报面经攒人品求onsite。找人内推的。第二天hr就联系我了。约了电面。
电面打电话过来的是一个美国人,听口音。开始问了最近在坐得project,然后开始写代码
第一题是字符串去重,只输出第一次出现的字母。
第二题是completed bst,打印所有path。follow up 是如果是有向图怎么修改代码,然后如果有cyclic怎么改。然后他说用boolean标记node有没有遇到过有什么pros and cons, 我只说了pros,不知道cons,他说多个线程同时读和写的时候可能会有问题。
最后让我问问题。总的来说小哥还是挺nice的,全程都在说nice,excellent。其实我觉得我第二题有向图修改的代码不一定对。
  1. INPUT: "xyzabcxyaaxyd"
  2. OUTPUT: "xyzabcd"
  3. .鏈枃鍘熷垱鑷1point3acres璁哄潧
  4. class Solution{
  5.     public String removeD(String s){. 鍥磋鎴戜滑@1point 3 acres
  6.         if(s==null || s.length()==0) return s;
  7.         HashMap<Character, Boolean> hs = new HashMap<>();. 1point 3acres 璁哄潧
  8.         StringBuilder result = new StringBuilder();
  9.         for(int i = 0; i<s.length(); i++){. Waral 鍗氬鏈夋洿澶氭枃绔,
  10.             if(!hs.constainsKey(s.charAt(i)){
  11.                 hs.put(s.charAt(i), true);
  12.                 result.append(s.charAt(i));
  13.             }. from: 1point3acres.com/bbs
  14.         }
  15.         return new String(result);
  16.     }. from: 1point3acres.com/bbs
  17. }. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴


  18.          A. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  19.         / \. 1point3acres.com/bbs
  20.        B   C
  21.       /   / \. 鍥磋鎴戜滑@1point 3 acres
  22.      D   E   F
  23.      .鏈枃鍘熷垱鑷1point3acres璁哄潧
  24. Output:
  25. ABD
  26. ACE
  27. ACF
  28. . visit 1point3acres.com for more.
  29. class TreeNode{
  30.     int val;
  31.     ArrayList<TreeNode> child;
  32.     boolean isVisited = false;
  33.     public TreeNode(int x){
  34.         val = x;. visit 1point3acres.com for more.
  35.         child = null;
  36.     }
  37. }

  38. class Soulution{
  39.     public void printPath(TreeNode root, ArrayList<TreeNode> list){. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  40.         if(root == null || root.isVistied==true) return;
  41.         if(root.child==null){
  42.             list.add(root);
  43.             print(list);-google 1point3acres
  44.             list.remove(list.size()-1);
  45.             return;
  46.         }
  47.         list.add(root);
  48.         list.isVisited = true;
  49.         for(TreeNode e : root.child){
  50.             printPath(e, list);
  51.         }
  52.         //printPath(root.left, list);. Waral 鍗氬鏈夋洿澶氭枃绔,
  53.         //printPath(root.right,list);
  54.         list.remove(list.size()-1);. visit 1point3acres.com for more.
  55.     }. 鍥磋鎴戜滑@1point 3 acres
  56.    
    . 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  57.     public void print(ArrayList<TreeNode> list){
  58.         for(TreeNode e: list){
  59.             System.out.print(e.val);
  60.         }
  61.         System.out.println();
  62.     }
  63. }



  64.     A
  65.    / \ 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  66.   B   C
  67.    \ /.鐣欏璁哄潧-涓浜-涓夊垎鍦
  68.     D
  69.    / \
  70.   E   F
  71.    \ /
  72.     G
复制代码

评分

2

查看全部评分

houqingniao 发表于 2015-3-3 08:28:20 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
应该还可以吧。. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
卤煮改成图的代码也上了?
回复 支持 反对

使用道具 举报

 楼主| fsc111 发表于 2015-3-3 09:42:21 | 显示全部楼层
关注一亩三分地微博:
Warald
houqingniao 发表于 2015-3-3 08:28
应该还可以吧。
卤煮改成图的代码也上了?

第二题的代码就是修改以后的代码
回复 支持 反对

使用道具 举报

deanmax 发表于 2015-3-4 22:05:47 | 显示全部楼层
此题应该不需要isVisited这个boolean吧,有的点还是会被重复访问的,比如最后那个图
回复 支持 反对

使用道具 举报

北航小涵 发表于 2015-3-5 01:00:30 | 显示全部楼层
deanmax 发表于 2015-3-4 09:05
此题应该不需要isVisited这个boolean吧,有的点还是会被重复访问的,比如最后那个图

. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴我也觉得不用啊。。如果只是从根输出到叶子,DFS就ok。follow up是不是问如果有环要判断并中断啊?那就设定一个visit 如果第二次处于某种状况又遇到了 直接return -1??这个意思么。
回复 支持 反对

使用道具 举报

zengm321 发表于 2015-3-5 03:39:26 | 显示全部楼层
DFS对undirected和directed有区别吗?不都要记录visited吗?
当然如果是tree,就默认没cycle,就不需要用visited了
回复 支持 反对

使用道具 举报

yuxrose 发表于 2015-3-5 16:05:03 | 显示全部楼层
第一题不用hashMap吧,用hashSet是不是就可以了
回复 支持 反对

使用道具 举报

yuxrose 发表于 2015-3-5 16:05:09 | 显示全部楼层
第一题不用hashMap吧,用hashSet是不是就可以了
回复 支持 反对

使用道具 举报

royalheart 发表于 2015-3-6 12:53:58 | 显示全部楼层
北航小涵 发表于 2015-3-5 01:00
我也觉得不用啊。。如果只是从根输出到叶子,DFS就ok。follow up是不是问如果有环要判断并中断啊?那就设 ...

同疑问,为什么visit过了就不输出了?
LZ贴的第二个图输出应该是什么?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-7-29 19:53

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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