传说中的谷歌招聘委员会成员之一,从幕后走出来,教你学系统设计!


一亩三分地论坛

 找回密码
 获取更多干活,快来注册
天天打游戏、照样领工资、还办H1B
这份工作你要不要?
把贵司招聘信息放这里
查看: 2523|回复: 8
收起左侧

[找工就业] 【分享】Facebook面经~转自mitbbs~

[复制链接] |试试Instant~ |关注本帖
sqzhang17 发表于 2014-7-22 01:32:48 | 显示全部楼层 |阅读模式

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

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

x
原帖在这:
http://www.mitbbs.com/article_t1/JobHunting/32739945_0_1.html
. 1point 3acres 璁哄潧. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
1. 给两个类A和B
. From 1point 3acres bbsclass A {
public void foo (A a) {
  ...-google 1point3acres
}.1point3acres缃
}
class B extends A {
public void foo (B b) {
  ...
}
}
问这么写会不会有问题

2. 关于Database的题,假如你执行
select * from employee
employee是一个table. 鍥磋鎴戜滑@1point 3 acres

但是返回错误说,这个table不存在什么的,但是现在已知存在这个table,问你可能是
什么原因。
完全没有思路,就说我也不知道。。。
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
3. 一种字母游戏这样的
给定四个位置 _,_,_,_ 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
然后每个位置可以选5个candidates,然后问这些candidates最多可以组成多少个有效. From 1point 3acres bbs
的词,字典是给定的。

比如,
如果字典是 [cake, bike, fake]. From 1point 3acres bbs
我们可以这样选candidates
第一个位置可以选 b,c,f,e,d
第二个位置 i,a,o,p,e
第三个位置 k,m,w,q,a
第四个位置 e,g,h,k,l
那这些可以组成3个有效的词 cake, bike, fake.

但是如果,这样选每个位置的candidates
第一个位置可以选 z,c,v,b,y
第二个位置 i,a,o,p,e
第三个位置 k,m,w,q,a. From 1point 3acres bbs
第四个位置 e,g,h,k,l

只能组成一个有效的词就是bike.
这样就是第一种选candidates的方法比较好。

然后问你怎么选每个位置的candidates,最终可以让能组成的词最多。. 1point3acres.com/bbs

没有什么特别好的思路,问是不是brutal search,还有更好的方法吗?答:你如果要
brutal search的话,你估算一下时间。
我就开始算时间,发现很长,然后面试官说,那你想办法优化。。。但是因为算brual
search的时间算了太长时间了,就没什么时间优化了。。。
————————————————Over啦~~Over~~Ove~~Ov~~O~~——————————————————————

看了一下帖子~职位是entry level software engineer~
第一题大家都说可以compile~但是不符合多态性原则~应该避免~
第二题大家说缺少了database名称~应该是db.employee
第三题没太看懂~
——————————————————————————分割线啊~分割线~分割~分~——————————————————————————
有个问题想问一下大家~第一题里面这算是override吗?不是说signature需要一致吗~B类当中foo()的arguement跟A类当中的foo()的argument不一样啊~
lzd1127 发表于 2014-7-22 07:53:35 | 显示全部楼层
第一题是overloading吧 , 我试了试, 有一点有点奇怪
  1. class A {
  2.         public void foo(A a) {
  3.                 System.out.println("I am A");
  4.         }
  5. }. from: 1point3acres.com/bbs
  6. class B extends A {
  7.         public void foo(B b) {
  8.                 System.out.println("I am B");. visit 1point3acres.com for more.
  9.         }

  10. . 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  11.         public static void main(String[] args) {
  12.                 A a = new A();
  13.                 B b = new B();
  14.                 A c = new B();.鐣欏璁哄潧-涓浜-涓夊垎鍦
  15.                 a.foo(a);. Waral 鍗氬鏈夋洿澶氭枃绔,
  16.                 a.foo(b);
  17.                 a.foo(c);
  18.                 c.foo(a);
  19.                 c.foo(b);
  20.                 c.foo(c);
  21.                 b.foo(a);
  22.                 b.foo(b);
  23.                 b.foo(c);. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  24.                
  25.         }. more info on 1point3acres.com
  26. } 鏉ユ簮涓浜.涓夊垎鍦拌鍧.


复制代码
输出
  1. I am A
  2. I am A
  3. I am A
  4. I am A
  5. I am A
  6. I am A
  7. I am A. more info on 1point3acres.com
  8. I am B
  9. I am A
复制代码
其中 b.foo(b)输出B 不奇怪,但是c.foo(b)输出A是为什么啊, c 的dynamic type不是B么
. From 1point 3acres bbs
补充内容 (2014-7-22 08:42):
好像就是这样的,就是和polymorphism 不一样。。
回复 支持 反对

使用道具 举报

 楼主| sqzhang17 发表于 2014-7-22 08:58:18 | 显示全部楼层
lzd1127 发表于 2014-7-22 07:53
第一题是overloading吧 , 我试了试, 有一点有点奇怪输出其中 b.foo(b)输出B 不奇怪,但是c.foo(b)输出A是 ...

嗯~我自己也写了一下~的确是override了~但是带入的argument不一样啊~为什么还override了呢~

c的type应该就是A吧~所以每次调用都是调用A类中自己的foo方法~
回复 支持 反对

使用道具 举报

lzd1127 发表于 2014-7-22 14:17:20 | 显示全部楼层
不不不,这不是override, 在class B, 如果public void foo(B b) 换成  public void foo(A b)才是override,需要signature一样。。。
回复 支持 反对

使用道具 举报

 楼主| sqzhang17 发表于 2014-7-23 01:17:12 | 显示全部楼层
lzd1127 发表于 2014-7-22 14:17
不不不,这不是override, 在class B, 如果public void foo(B b) 换成  public void foo(A b)才是override, ...

哦哦~我觉得也是啊~嗯~
回复 支持 反对

使用道具 举报

saklyn 发表于 2014-7-23 10:58:57 来自手机 | 显示全部楼层
第三题感觉是DP
回复 支持 反对

使用道具 举报

saklyn 发表于 2014-7-23 11:04:41 来自手机 | 显示全部楼层
saklyn 发表于 2014-7-23 10:58
第三题感觉是DP

可以用DP来做,就是,找到字典的longest common strings,然后在对应的位置candidates必须包含lcs。.鐣欏璁哄潧-涓浜-涓夊垎鍦
然后再到字典里找the second longest common string
一直到lcs长度为1。
然后再把字典里包含lcs的的词中不属于lcs的部分放到candidate里面。
回复 支持 反对

使用道具 举报

 楼主| sqzhang17 发表于 2014-7-23 12:19:15 | 显示全部楼层
saklyn 发表于 2014-7-23 11:04
可以用DP来做,就是,找到字典的longest common strings,然后在对应的位置candidates必须包含lcs。
然 ...

嗯~同意~应该可以~
回复 支持 反对

使用道具 举报

shiragiku 发表于 2014-8-3 05:47:20 | 显示全部楼层
sqzhang17 发表于 2014-7-23 12:19
嗯~同意~应该可以~
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
看不懂DP地方法,能不能麻烦您解释的详细一点
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-9-23 22:56

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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