一亩三分地论坛

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

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

4.14 BB onsite四轮游 2

[复制链接] |试试Instant~ |关注本帖
scy0208 发表于 2016-4-16 00:45:17 | 显示全部楼层 |阅读模式

2016(4-6月) 码农类 硕士 全职@Bloomberg - 内推 - Onsite |Otherfresh grad应届毕业生

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

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

x
楼主是三月10号内推的BB,三月20多拿到电面,电面面筋http://www.1point3acres.com/bbs/thread-185248-1-1.html

首先按照惯例吐槽一下BB只给一晚旅馆而且里面用wifi要收15刀。
. From 1point 3acres bbs
第一轮:白人小哥加一个五官像烙印但是很白的小哥.鐣欏璁哄潧-涓浜-涓夊垎鍦
开场万年不变的Why BB?
然后楼主说主要用的是C++,不出所料白人小哥先问了一道C++基础题。
(1)现在有一个class和一个函数
class A {

}
void func() {
    A a;. visit 1point3acres.com for more.
    cout << "2";
}
不能修改func,只能在class里面填空,怎么让func调用以后会输出“1 2 3”,在构造函数和析构函数里加打印就可以了。. From 1point 3acres bbs
(2)然后小哥把func改成
void func() {
    A *a = new A();
    cout << "2";
}. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
问输出是什么,怎么才能让func输出“1 2 3”,用new构造的class不会自动析构,所以输出是“1 2”, 如果想打印“3”就要在func最后加delete a
(3)小哥接着说如果现在有一个base class
class B {

}
-google 1point3acres
class A : public B {

}
. from: 1point3acres.com/bbs
void func() {
    B *a = new A();
    cout << "2";
    delete a;
}
怎么才能让func继续打印出“3”,很经典的virtual destructor的题,在class B里加一个virtual destructor,delete a的时候就会调用A的析构函数了。

接着是另一个小哥提问,现在有两个queue,他们都有一个GetNext方法,可以弹出队里的下一个元素,而且这个方法是Block的。例如
q1: 0.7   1.2   3.0
q2:1.4    1.5   3.5
请打印出q1和q2里所有差值小于1的pair,上面这两个queue的输出会是(0.7, 1.4), (1.2, 1.4), (0.7, 1.5), (1.2, 1.5), (3.0, 3.5)
楼主一开始没太理解题目,一听到block就联想到了很复杂的多线程问题,就stuck住了,磕磕绊绊的尝试各种方法,最后发现其实用两个额外的queue把元素存下来就好了,在小哥的提示下磕磕绊绊的把思路说了出来,由于时间耗太久了,小哥就没让写完整代码。

最后又换回白人小哥提问,问题类似 leetcode 200. Number of Islands,不同之处是得把每个island里面所有点的坐标收集起来。并不难,加一个收集坐标的二位动态数组就可以了。

第二轮:白人小哥加烙印叔叔
开场继续Why BB?
这两个面试官看起来明显比前两个老,跟他们讨论的时候也感觉他们很有经验。
白人小哥上来先问了一道怎么实现一个BigInteger类,楼主之前做hackerrank题的时候写过一个,就告诉他我以前写过而且放到github上面了,面试官微笑了一下说那我们简单讨论一下就下一道题吧,我就把难点和优化都简要说了一下,小哥很满意,直接进入下一题。.鐣欏璁哄潧-涓浜-涓夊垎鍦

这题是现在你有一堆的minHeap,每个minHeap都有pop和isEmpty方法,请你实现一个master heap,使得这些堆看起来就像一个堆一样,每次pop的时候返回所有堆里的最小值。这个题目其实跟merge k sorted list很像,在master heap额外维护一个priority queue,然后把每个堆堆顶以及指向这个堆的指针放到priority queue里就好,写完以后问了楼主会怎么测试他,楼主就提了三哥test cases,cover了代码里的每一个函数的每一个分支,小哥很满意,叫烙印可以开始提问了。

烙印叔叔看起来35-40岁,让我设计FB的user类和wall,每个user的朋友可以post帖子到他的wall上,问我会用什么数据结构来储存user,post等等。这道题是一个OO和数据结构设计的混合题,因为楼主之前做过一个FB的simulator,所以对这些类还有印象,设计过程中和烙印讨论的非常愉快,他也给了我很多有用的提示,讨论大概持续了20分钟,问了很多数据结构设计相关的问题。

结束以后两个面试官都很满意,直接和我说他们不用讨论了,让我直接在这等第三轮的面试官来吧。. visit 1point3acres.com for more.


第三轮:HR
看大家的面经第三轮应该是manager的,可能manager正在面试其他人,就换了HR先来。
开场还是Why BB?
然后问了各种各样的常规问题,喜欢干什么,喜欢什么城市,有没有offer,实习的时候经理对我什么评价,优缺点是什么等等。然后还让我给他解释其中一个project,她大义凛然的说技术的她都不懂,用通俗的方法给她解释。楼主本来口语就一般,还不让用专业词汇,解释的好吃力,最后感觉她也没听懂,不过倒是听得挺认真的。

第四轮:白人经理
经理已经在BB十二年了,混过的组有6,7个,知识各种全面,吓得楼主都不敢乱吹了。
开场.....Why BB?而且追加了你觉得你能给BB带来什么,BB能给你带来什么。. From 1point 3acres bbs
接着还问了很多behavioral的问题
(1)现在技术这么多,你会怎么选择学习什么技术
(2)你觉得BB为什么要找entry level的人 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
(3)什么才是testable的代码
(4)怎么测试有dependecy的代码
(5)你觉得我们对你的第一年有什么期望
       ……
最后让楼主描述做过最cool的项目和为什么cool。

求人品!

评分

2

查看全部评分

Alice0701 发表于 2016-4-16 00:58:32 | 显示全部楼层
赞楼主 祝好运啊!!
回复 支持 反对

使用道具 举报

 楼主| scy0208 发表于 2016-4-16 01:02:52 | 显示全部楼层
Alice0701 发表于 2016-4-16 00:58
赞楼主 祝好运啊!!
. From 1point 3acres bbs
谢谢,没有被烙印刁难还是很幸运的
回复 支持 反对

使用道具 举报

donnice 发表于 2016-4-16 01:04:22 | 显示全部楼层
感觉还是蛮有戏的!
回复 支持 反对

使用道具 举报

fyh8238865 发表于 2016-4-16 01:05:29 | 显示全部楼层
楼主是女生吗?
回复 支持 反对

使用道具 举报

 楼主| scy0208 发表于 2016-4-16 01:12:58 | 显示全部楼层
donnice 发表于 2016-4-16 01:04. from: 1point3acres.com/bbs
感觉还是蛮有戏的!

感觉behavioral答得一般,口语捉急
回复 支持 反对

使用道具 举报

 楼主| scy0208 发表于 2016-4-16 01:13:21 | 显示全部楼层

楼至是纯直男
回复 支持 反对

使用道具 举报

 楼主| scy0208 发表于 2016-4-16 01:13:27 | 显示全部楼层

楼主是纯直男
回复 支持 反对

使用道具 举报

fyh8238865 发表于 2016-4-16 01:19:36 | 显示全部楼层

所噶,昨天和一个女生一起出来的,我以为你是那个的。也预祝楼主成功咯
回复 支持 反对

使用道具 举报

程序媛养猫猫 发表于 2016-4-16 04:20:08 | 显示全部楼层
多谢分享,楼主好运!
回复 支持 反对

使用道具 举报

e6175423 发表于 2016-4-26 14:46:07 | 显示全部楼层
谢谢楼主啊!请问这两题:
1. 现在有两个queue,他们都有一个GetNext方法,可以弹出队里的下一个元素,而且这个方法是Block的
2. 让我设计FB的user类和wall,每个user的朋友可以post帖子到他的wall上,问我会用什么数据结构来储存user,post等等. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
楼主怎么答的?
回复 支持 反对

使用道具 举报

yfang0663 发表于 2016-6-5 10:22:56 | 显示全部楼层
3)什么才是testable的代码
SOLID principle?.鐣欏璁哄潧-涓浜-涓夊垎鍦
(4)怎么测试有dependecy的代码
Mocking? Stubbing?
回复 支持 反对

使用道具 举报

zzgzzm 发表于 2016-10-11 04:59:32 | 显示全部楼层
不是很明白: "现在有两个queue,他们都有一个GetNext方法,可以弹出队里的下一个元素,而且这个方法是Block的"
是说不可以调用方法"GetNext"? 怎么存下来queue里的值呢?多谢
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-11 16:21

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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