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


一亩三分地论坛

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

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

BLOOMBERG ONSITE 11.4面经。。

[复制链接] |试试Instant~ |关注本帖
ljbschen 发表于 2015-11-13 11:37:52 | 显示全部楼层 |阅读模式

2015(10-12月) 码农类 硕士 全职@Bloomberg - 网上海投 - Onsite |Failfresh grad应届毕业生

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

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

x
11.4才面完的Bloomberg的onsite。。周五收到拒信跪了。。现在掏出新鲜的面经。。
LZ是网投。公司效率是高的很。差不多一周就回邮件安排phone screen。
一周后电话问了3个coding。分别是merge two sorted arrays, two sum还有heap sort。。题目都不难中规中矩。
2天后收到ONSITE邀请。。是11.4号的group interview。第一轮理论上是1+1(shadow)。但是同时面试的有人没来。他们的面试官就挤楼主这来了。楼主1V3。
第一题烙印:move the target numbers to the end of array and keep the original order of other elements. 楼主in-place用了个offset解决了。。不过面试官貌似没反应过来。让我仔细过了遍才算过。. visit 1point3acres.com for more.
第二题中国人:是API design 数据结构的题。首先要说的是这个中国人英文说的很差。。题目完全没有说清楚。歧义太多。当时房间里4个人。。有4种interpretation。。也是醉了。。楼主估计自己也是挂在这里。题目大意是每一秒都有很多input进来。组成是 stock symbol + price。需要设计一个数据结构来储存以备调取。同时需要支持2个methods。分别是getLatestPrice & getTop20Price。第一个很简单。用MAP就可以实现。。第二个楼主只想出来再用一个linked list每次有input来的时候都检查一遍。如果有高过当前已有股票的就插入然后删除最后一个。。。数据结构应该没什么问题。。但是面试官其实要求的TOP20并不是当前的最高20。而是今天历史记录中的最高20。这里坑了。。再然后他所要的TOP20是可能有dup的。。这里也坑了。。反正因为沟通不畅楼主一直都很迷惑他到底具体要问什么。。然后一遍一遍的改变设计初衷。。导致最后时间不够没有写完。。第三个面试官都没有问出问题来。。经验教训就是一开始一定要花点时间和面试官好好沟通交流确定了解清楚他问的是什么。。。
第一轮一共差不多75分钟。. more info on 1point3acres.com
第二轮只有一个面试官。一个白人哥哥。很和气。。
第一题问了bfs & dfs的大概实现方法。。没要写code。就解释一下。
第二题是根据我自己做过的机器人的project。他设计了一个MAZE。让我来写个程序去解决他。简单的dfs。记得记录走过的点。以及考虑好走到死路怎么解决基本就行。。因为是楼主做过的project。基本完美解决了。最后白人哥哥还和我give me five了一下。。
第二轮一共60分钟
第三轮是manage。他在BB工作了16年了。然后介绍了一下他手下的几个组和项目。。问了问我的专业背景和兴趣方向。简单问了些数据结构的概念问题。。差不多30分钟
第四轮是HR。常规问题。h1b。工资。等等。也是30分钟的样子。-google 1point3acres
一趟走完的时候楼主自己觉得除了中国人那题。。其他基本都没问题。。不过最后还是挂了。。
--------------------------------------------------------------------总结问题--------------------------------------------
1. merge two sorted array
2. two sum
3. heap sort
4. move the target numbers to the end of array and keep the original order of other elements.鐣欏璁哄潧-涓浜-涓夊垎鍦
5. API design
6. DFS/maze solver




最后。。求大米。。。

评分

7

查看全部评分

lianlu 发表于 2015-11-13 15:40:21 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
11.6 周五去的,感觉manager和你是一个人。周一跪的。
回复 支持 反对

使用道具 举报

tanpf5 发表于 2015-11-13 22:27:09 | 显示全部楼层
关注一亩三分地微博:
Warald
四轮都面完了跪了,有点可惜啊
回复 支持 反对

使用道具 举报

 楼主| ljbschen 发表于 2015-11-14 00:44:28 | 显示全部楼层
tanpf5 发表于 2015-11-13 22:27
四轮都面完了跪了,有点可惜啊

因为后面越来越顺。。跟manager也聊了很多。。HR问的问题也很细。。当时我都觉得offer稳了。。所以挂了之后郁闷了好久。。不过不管怎样。。继续学继续面吧。。move on
回复 支持 反对

使用道具 举报

royal_916 发表于 2015-11-15 06:51:26 | 显示全部楼层
求问数据结构这题什么思路, 我看问的挺多,但是不清楚他要什么啊  顶多就是hashmap + list 或者heap + list, 有dup就没法用map了啊,这要怎么搞。。。
回复 支持 反对

使用道具 举报

 楼主| ljbschen 发表于 2015-11-15 12:54:46 | 显示全部楼层
royal_916 发表于 2015-11-15 06:51. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
求问数据结构这题什么思路, 我看问的挺多,但是不清楚他要什么啊  顶多就是hashmap + list 或者heap + l ...

以我的理解是这个样子。。我先解释一下题目。
比如今天有很多股票信息进来。。然后Google从100跌到99再跌到98。但是100,99,98这3个在今天的所有股票中都是最高的话。。那返回的20个的list就应该都包括。。。如果不包括dup的话。就是留100。
我想的解决方法还是map+list。map当中对应latestPrice。然后list里储存到目前为止所有出现过的最高20支价格。。每次有新的信息进来的时候map要做的是检查是否有当前key。有的话改val。没得话加pair。list要做的就是扫一遍当前list。因为只要20个元素吗。所以时间不会很长。如果当前信息的价格比现有list中元素高的话就是插入然后删除最后一个。不然就什么都不做。。当然。如果list的长度不足20的话。直接插入。
我暂且是这么想的。。。至于优化我就不知道了。。
回复 支持 反对

使用道具 举报

22691482 发表于 2015-11-15 13:20:24 | 显示全部楼层
是API design 数据结构的题感觉很高频啊,我当时面的时候也是这道题。
回复 支持 反对

使用道具 举报

 楼主| ljbschen 发表于 2015-11-15 14:59:25 | 显示全部楼层
22691482 发表于 2015-11-15 13:20
是API design 数据结构的题感觉很高频啊,我当时面的时候也是这道题。

我事先也是想了一想的。。但是面试的时候考官实在是问不清楚。以至于乱七八糟的没写完。。遗憾。
回复 支持 反对

使用道具 举报

xiaogan2005 发表于 2015-11-15 15:54:01 | 显示全部楼层
感谢分享,楼主网投能拿到面试说明很厉害嘛!但是面试有时候随缘的,有时候可能就一个面试官感觉不好,你答的没问题也不行。或者大家答得都差不多,这时候就拼运气了。
回复 支持 反对

使用道具 举报

royal_916 发表于 2015-11-16 00:46:46 | 显示全部楼层
ljbschen 发表于 2015-11-15 12:54
以我的理解是这个样子。。我先解释一下题目。
比如今天有很多股票信息进来。。然后Google从100跌到99再 ...

感谢回复! 那你list的node里面存的是股票名称和价格? hashmap的value是node(或者只有价格)?我感觉唯一可以优化的就是把list改成heap,从k到logk吧?heap里面存股票名称和价格。
回复 支持 反对

使用道具 举报

 楼主| ljbschen 发表于 2015-11-16 00:52:11 | 显示全部楼层
royal_916 发表于 2015-11-16 00:46
感谢回复! 那你list的node里面存的是股票名称和价格? hashmap的value是node(或者只有价格)?我感觉唯 ...

我的想法是map和list并不相交。。list里每个node存股票名字和价格。map里key是名字val是价格。。分开来管理。。因为说到底2个methods一个是sort一个是search。Map管search.list管sort。不过你说的对。。list改成heap应该更好。
回复 支持 反对

使用道具 举报

royal_916 发表于 2015-11-16 01:09:32 | 显示全部楼层
ljbschen 发表于 2015-11-16 00:52
我的想法是map和list并不相交。。list里每个node存股票名字和价格。map里key是名字val是价格。。分开来管 ...

嗯嗯  分开更清楚些,的确没有必要关联起来,他们家onsite经常出这种股票api的题,但是具体到每个题又都不太一样,不知道考点是啥,因为不是map+heap就是map+list。。。
回复 支持 反对

使用道具 举报

royal_916 发表于 2015-11-16 05:31:17 | 显示全部楼层
还有就是move target numbers是什么情况  可以详细说一下么  感谢!
回复 支持 反对

使用道具 举报

 楼主| ljbschen 发表于 2015-11-16 08:40:03 | 显示全部楼层
royal_916 发表于 2015-11-16 05:31. From 1point 3acres bbs
还有就是move target numbers是什么情况  可以详细说一下么  感谢!

就比如给一个数组。{1,5,9,7,13,2,1,3,20}。让你把所有的1放到数列最后。其他数字的顺序不变。。
回复 支持 反对

使用道具 举报

royal_916 发表于 2015-11-16 10:22:40 | 显示全部楼层
ljbschen 发表于 2015-11-16 08:40
就比如给一个数组。{1,5,9,7,13,2,1,3,20}。让你把所有的1放到数列最后。其他数字的顺序不变。。

那是先遍历统计1的个数,然后类似于two pointer遍历向前赋值,最后几个赋值为1嘛
回复 支持 反对

使用道具 举报

 楼主| ljbschen 发表于 2015-11-16 10:26:18 | 显示全部楼层
royal_916 发表于 2015-11-16 10:22
那是先遍历统计1的个数,然后类似于two pointer遍历向前赋值,最后几个赋值为1嘛

省点时间的话就是每次过一个数就立刻赋值。用一个offset记录到目前为止一共有多少个1。然后直接计算出应赋予的index。这样for loop一遍就够了。。最后几个位置就强行code成1就完事。。我是这样解的。。。面试官想了半天才看懂。。
回复 支持 反对

使用道具 举报

royal_916 发表于 2015-11-16 10:39:50 | 显示全部楼层
ljbschen 发表于 2015-11-16 10:26
省点时间的话就是每次过一个数就立刻赋值。用一个offset记录到目前为止一共有多少个1。然后直接计算出应 ...

估计面试官可能想的也是我这种比较直观的,统计完了一个个的赋值,你这个方法真不错!遍历一遍就ok了
回复 支持 反对

使用道具 举报

xiaoying10101 发表于 2015-11-24 03:41:56 | 显示全部楼层
ljbschen 发表于 2015-11-14 00:44
因为后面越来越顺。。跟manager也聊了很多。。HR问的问题也很细。。当时我都觉得offer稳了。。所以挂了之 ...

额 我也是这个感觉 完了要跪。。。
回复 支持 反对

使用道具 举报

mc9570 发表于 2015-11-24 04:42:06 | 显示全部楼层
四轮挂了好可惜,是不是现在越来越多这样的?到底看什么呢?people skills?
回复 支持 反对

使用道具 举报

 楼主| ljbschen 发表于 2015-11-24 06:12:51 | 显示全部楼层
xiaoying10101 发表于 2015-11-24 03:41. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
额 我也是这个感觉 完了要跪。。。

不会不会。。一般面完4轮都多半是offer的。。当我运气不好。。呵呵
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-7-28 21:11

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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