推荐:数据科学课程和书籍清单以及培训讲座


一亩三分地论坛

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

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

来报个FB电面面经

[复制链接] |试试Instant~ |关注本帖
tanpf5 发表于 2016-2-19 09:07:02 | 显示全部楼层 |阅读模式

2016(7-9月) 码农类 本科 实习@Facebook - 内推 - 技术电面 |Other其他

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

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

x
一面面的非常糟糕,找了个身体不适的理由,FB相当于赏了一次锻炼的二面机会。
刚面完,三哥,人比较耐心,总共两道题。. From 1point 3acres bbs
第一道顺时针的print binary tree boundary, 就是从根开始,先打右边界,再打叶子,最后打左边界。
第二题buy and sell stock,每天可以买一股,也可以都买了,或者不买不卖。
两道题都在三哥的提示下答对了,不过第二题没时间写代码。
然而没有卵用,等拒信的节奏,发个面经回馈下版友。


补充内容 (2016-2-19 09:20):.鏈枃鍘熷垱鑷1point3acres璁哄潧
Sorry, 第二题手滑了把卖打成买了,这里再解释一遍
这里面每天可以有三种操作:买一股,全卖出,不买不卖

评分

3

查看全部评分

本帖被以下淘专辑推荐:

 楼主| tanpf5 发表于 2016-2-19 09:47:01 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
Jester_Z 发表于 2016-2-19 09:42. 1point 3acres 璁哄潧
所以 楼主 第一题是要3-pass么 先打印右边 然后再打印叶子 然后再打印左边 . 1point3acres.com/bbs
感觉不能整合在一起=  =
第二 ...

具体顺序:
print root.val
printRightBoundary(root.right)
printLeaves(root.right) 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
printLeaves(root.left)
printLeftBoundary(root.left)
够详细了吧
回复 支持 4 反对 1

使用道具 举报

minggr 发表于 2016-10-10 06:45:53 | 显示全部楼层
关注一亩三分地微博:
Warald
第二题另外一个贴子有讨论过了,
思想就是从后往前扫,在peek element处卖,
比如:{1, 2, 4, 9, 2, 2, 5, 3}, 从后往前扫,
5是peek element: 卖5,买2, 买2. visit 1point3acres.com for more.
9是peek element: 卖9,买4, 买2,买1
  1. int max_profit(vector<int> &prices)
  2. {
  3.     int n = (int)prices.size(); 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  4.     int max_price = 0;
  5.     int profit = 0;. from: 1point3acres.com/bbs

  6.     for (int i = n - 1; i >= 0; i--) {. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  7.         if (prices[i] > max_price)
  8.             max_price = prices[i];
  9.         else
  10.             profit += max_price - prices[i];
  11.     }
  12. . more info on 1point3acres.com
  13.     return profit;
  14. }
复制代码

评分

1

查看全部评分

回复 支持 2 反对 0

使用道具 举报

Jester_Z 发表于 2016-2-19 09:42:55 | 显示全部楼层
所以 楼主 第一题是要3-pass么 先打印右边 然后再打印叶子 然后再打印左边
感觉不能整合在一起=  =
第二题的话 其实是Buy and sell stock II 么  只要递增的时候不停的买卖加起来?=  =
回复 支持 0 反对 1

使用道具 举报

DJ963 发表于 2016-2-19 09:16:36 | 显示全部楼层
想问一下楼主第一题,只要输出一圈就可以了吗
回复 支持 反对

使用道具 举报

 楼主| tanpf5 发表于 2016-2-19 09:17:30 | 显示全部楼层
DJ963 发表于 2016-2-19 09:16
想问一下楼主第一题,只要输出一圈就可以了吗

对,实际上我说的顺序,就是做这个题的方法
回复 支持 反对

使用道具 举报

DJ963 发表于 2016-2-19 09:22:04 | 显示全部楼层
tanpf5 发表于 2016-2-19 09:17
对,实际上我说的顺序,就是做这个题的方法
. From 1point 3acres bbs
嗯,其实就是level orde遍历,r 每次记录每一行最左边的点和最右边的点,分别用两个list存起来就可以了是吗. visit 1point3acres.com for more.

补充内容 (2016-2-19 09:26):
还差了一些,请忽视这个。。
回复 支持 反对

使用道具 举报

 楼主| tanpf5 发表于 2016-2-19 09:25:28 | 显示全部楼层
DJ963 发表于 2016-2-19 09:22.鐣欏璁哄潧-涓浜-涓夊垎鍦
嗯,其实就是level orde遍历,r 每次记录每一行最左边的点和最右边的点,分别用两个list存起来就可以了是 ...

差不多吧,实际上我就写了三个函数,printRightBoundary, printLeftBoundary, printLeaves
回复 支持 反对

使用道具 举报

DJ963 发表于 2016-2-19 09:30:20 | 显示全部楼层
tanpf5 发表于 2016-2-19 09:25. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
差不多吧,实际上我就写了三个函数,printRightBoundary, printLeftBoundary, printLeaves

那楼主 如果是
            1   .鏈枃鍘熷垱鑷1point3acres璁哄潧
          /    \.1point3acres缃
        2        3
      /  \      /  \
   4      5   6    7. 1point 3acres 璁哄潧
  /                   \
8                       9  
这样的话,输出结果应该是 1,2,4,8,5,6,9,7,3,1吗
回复 支持 反对

使用道具 举报

 楼主| tanpf5 发表于 2016-2-19 09:32:07 | 显示全部楼层
DJ963 发表于 2016-2-19 09:30
那楼主 如果是
            1   
          /    \

反过来,顺时针
回复 支持 反对

使用道具 举报

DJ963 发表于 2016-2-19 09:33:08 | 显示全部楼层
tanpf5 发表于 2016-2-19 09:32
反过来,顺时针

嗯,明白了~ 感谢楼主分享啊,祝楼主好运,说不定会有惊喜呢
回复 支持 反对

使用道具 举报

 楼主| tanpf5 发表于 2016-2-19 09:34:06 | 显示全部楼层
DJ963 发表于 2016-2-19 09:33
嗯,明白了~ 感谢楼主分享啊,祝楼主好运,说不定会有惊喜呢
. more info on 1point3acres.com
嘿嘿谢谢,你也加油~
回复 支持 反对

使用道具 举报

gaocan1992 发表于 2016-2-19 09:48:59 | 显示全部楼层
还能赏二面吗,怎么求的。那二面过了还有三面么。。。
回复 支持 反对

使用道具 举报

 楼主| tanpf5 发表于 2016-2-19 09:53:39 | 显示全部楼层
gaocan1992 发表于 2016-2-19 09:48
还能赏二面吗,怎么求的。那二面过了还有三面么。。。
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
就说身体不适没发挥好啊,不过这种情况就算有面试基本都是面完秒拒的节奏,一般拒绝的理由都是人满了,看多礼貌
回复 支持 反对

使用道具 举报

gaocan1992 发表于 2016-2-19 09:55:02 | 显示全部楼层
tanpf5 发表于 2016-2-18 17:53
就说身体不适没发挥好啊,不过这种情况就算有面试基本都是面完秒拒的节奏,一般拒绝的理由都是人满了,看 ...
. 鍥磋鎴戜滑@1point 3 acres
这样,我思考下。感觉自身水平还是不足。
回复 支持 反对

使用道具 举报

 楼主| tanpf5 发表于 2016-2-19 09:56:10 | 显示全部楼层
Jester_Z 发表于 2016-2-19 09:42. From 1point 3acres bbs
所以 楼主 第一题是要3-pass么 先打印右边 然后再打印叶子 然后再打印左边
感觉不能整合在一起=  =
第二 ...

第二题跟那个有区别,那个是买一次必需卖了才能买第二次。
第二题的解法是:
每次找最大值,然后最大值前面的都买,最大值那天卖掉。. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
后面的部分递归调用上边的算法
回复 支持 反对

使用道具 举报

Jester_Z 发表于 2016-2-19 10:25:16 | 显示全部楼层
tanpf5 发表于 2016-2-19 09:56
第二题跟那个有区别,那个是买一次必需卖了才能买第二次。
第二题的解法是:
每次找最大值,然后最大值 ...

多谢楼主! 我想一下~ 楼主好运~~~
回复 支持 反对

使用道具 举报

linlin1990 发表于 2016-2-20 23:26:27 | 显示全部楼层
好奇过了吗。。
回复 支持 反对

使用道具 举报

 楼主| tanpf5 发表于 2016-2-28 11:42:47 | 显示全部楼层
.鏈枃鍘熷垱鑷1point3acres璁哄潧
前两天收到的,没过。。
回复 支持 反对

使用道具 举报

woshixuyoudan 发表于 2016-3-1 09:40:49 | 显示全部楼层
tanpf5 发表于 2016-2-19 09:25
差不多吧,实际上我就写了三个函数,printRightBoundary, printLeftBoundary, printLeaves

感觉不用写三个函数   bfs一遍就可以了
不过我要是面试没有遇到原题估计就很紧张啥都想不出来吧。。lz好厉害!!!!
回复 支持 反对

使用道具 举报

cx00001 发表于 2016-3-8 12:59:31 | 显示全部楼层
DJ963 发表于 2016-2-19 09:30.鐣欏璁哄潧-涓浜-涓夊垎鍦
那楼主 如果是
            1   
          /    \

顺时针是1 3 7 9 6 5 8 4 2 1吗?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-7-25 17:03

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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