一亩三分地论坛

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

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

Bloomberg Onsite 两轮游

[复制链接] |试试Instant~ |关注本帖
金针鸡丝 发表于 2016-2-19 21:42:15 | 显示全部楼层 |阅读模式

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

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

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

x
1月7日在地里找的内推

1月20日回复邮件约面试

2月8日电面

2月11日通知Onsite
. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
2月18日Onsite

. From 1point 3acres bbs

第一轮:中国大叔和美国小哥

首先是问简历上的一个project,每人问了几个问题。整个过程大概10~15分钟。需要描述project,根据描述会询问一些细节的问题。

这一轮的代码都是在纸上用铅笔写的。

1. 中国大叔:

Compute minimum traveling cost.
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
There are cities on a grid (matrix). A salesman want to travel from city (0, 0) to (m, n). He can only move horizontally and vertically.
.鐣欏璁哄潧-涓浜-涓夊垎鍦
Given the cost from one city to the city next to it, e.g. from (0, 0) to (0, 1), and from (0, 0) to (1, 0).

Calculate minimum cost from (0, 0) to (m, n).

. 鍥磋鎴戜滑@1point 3 acres
. from: 1point3acres.com/bbs
        首先跟大叔解释了一下想法:到(m,n)城市需要比较{(m-1,n)+ Cost from (m-1, n) to (m, n) }和{(m,n-1)+ Cost from (m, n-1) to (m, n) },然后在两者之中选比较小的那个值。然后列出来方程f(m, n) = min( f(m-1,n) + Cost from (m-1, n) to (m, n), f(m, n-1) + Cost from (m, n-1) to (m, n)).

        之后开始在纸上写代码。

        Cost from (m-1, n) to (m, n)后面写完代码问了用什么数据结构存这个值,我说的用Hash Table存<String, Integer>的key value pair,String的话就把两个city的matrix index (a,b), (c, d)压缩成”(a, b)->(c,d)"这样。但其实想想可能有更好的方法存这个数据, 矩阵上的每个城市只有固定的4个相邻城市,不考虑边界的话。
. From 1point 3acres bbs
        问完了cost的数据结构之后,大叔说可以了,然后换美国小哥了。

p.s.        
        但现在想想这题想的不完全,有了leetcode上面的62. Unique Path的思维定式,觉得只能往右或者往下移动。实际上还可以往左或者往上移动,所以每个点应该比较4个值。不知道为什么大叔没有指出来这一点。
        这位大叔人很好,对我很照顾。

2. 美国小哥:
Deep copy a linked-list with random pointers.

      -—————————————-
       |                                               |
       |                                               V

ListNode1 —> ListNode2 —> ListNode3 —> null
       |                         ^                      |     ^

       | __________|                       |___|



        (原谅我的迷之作图,这是我的灵魂之作)
        小哥先在纸上画了一个链表 (就上面那货), 并跟我解释了一下:

There are many random pointers in the list. It might point to any node in the linked list, backward, forward, or point to itself. Make a deep copy of that linked list. Deep copy means get another new linked list with the same structure, and the new node of new linked-list shouldn't point to old node in memory.

        首先让设计这个ListNode的类。
. visit 1point3acres.com for more.
class ListNode {
        ListNode next;
        List<ListNode> randomNexts;
        int val;
        ListNode(int x) {this.val = x;}
}
. Waral 鍗氬鏈夋洿澶氭枃绔,
        刚开始说了一个brute force的解法: 为了构建new node里面的random pointers,每个random pointer都扫描一下整个old linked-list,得到node position index,然后从new linked-list里面找到对应的new node。说完之后小哥问了时间复杂度,平均random pointers的数量为k的话worst case O(n^k).
        解释完brute force之后跟小哥说由于时间复杂度太高,我们应该想办法优化一下。时间复杂度高是因为不停的扫描linked-list得到节点的position index,在新的linked-list里面要找到对应的节点也要从头开始找。为了节省时间可以用hash table + arraylist。hash table来存<ListNode, Integer>,ListNode存的是old node,Integer存的是old node对应的position index。arraylist就直接存List Node。之后在程序里面复制random pointers的时候,用hash table得到position index,  然后用ArrayList<ListNode>直接找到new node。对于k个random pointers,复制每个节点的时间复杂度就是O(k)了。n个节点就是O(nk)了。
        没有follow up。之后是10分钟左右的提问环节。


第二轮:印度大叔和ABC大哥

  • 印度大叔:

        这次是在电脑上用键盘敲。
        lc原题 271. Encode and Decode Strings (https://leetcode.com/problems/encode-and-decode-strings/
.鐣欏璁哄潧-涓浜-涓夊垎鍦

2. ABC大哥:

        因为上一问写题的时候一边说一边写,花了很多时间解释细节,到ABC大哥的时候就剩下20分钟了。ABC大哥出了道数学题:
There is a virus program. It will generate a 100MB file on your disk after created, and then gets into a while loop.

// virus program
generate-100MB();
while (true) {
        sleep-1-min();
        clone();       // clone program it self.
}

. more info on 1point3acres.com
If I click this virus program 1 time, it will take 10 minutes to fill the disk. My question is if I click the virus program twice, how long it will take to fill the disk?
. Waral 鍗氬鏈夋洿澶氭枃绔,
        答案:9分钟。One click: 0 min —> 1file, 1 min —> 2 files, 2 min —> 4 files, …, 10 min —> 1024 files. Two click: 0min —> 2 files, 1 min —> 4files, …, 9 min 1024 files.
        数学题没答出来,不知道当时脑子哪里短路了,总之天马行空的往另一个方向想了。在ABC大哥N多次提醒之下写出答案。

之后是提问环节,对Bloomberg有什么问题要问的。
. visit 1point3acres.com for more.
总结:
一、Bloomberg考的不是leetcode hard难度的题,都是很基础的题,所以熟练度和代码质量要求很高。比如第二轮第一题的时候我在一个for loop里面最后写了一个i += end,印度大叔说你这样写不可以,因为for循环是保证循环时间是n的,然后改成了while循环。所以小伙伴们一定要注重代码细节和质量啊。
二、最后的提问环节挺重要。不说逆转乾坤,但也算是给面试官留下最后印象的好机会。我在第二轮的最后提问环节就草草问了两个问题,感觉本可以做的更好的。
三、每轮面试时间都是一小时,一个面试官半小时的样子,所以每轮出多少题取决于做题速度。像我做的就不够快,一边解释一边写,每个考官了一道题,四轮总共四道题。p.s.如果够快的话是可以两轮12题的(想想平均10分钟一题,还不算问简历和提问时间)
四、做题的时候解释和写代码的时间要平衡好。像我这次面试就在解释每个点上都花了比较多的时间。其实想想有很多比较简单直白的概念、想法,或者一行代码就能表达出来的东西不需要解释的那么详细。小伙伴们来之前一定要在白板或者纸上练习一下,最好找一个同学或者朋友帮你平衡好这个权重。
五、简历上的project会顺着你的回答提问,问的很深,而且每个点都会问的很详细。准备好简历上的每个点以及每个点可能带出来的问题和每个点带出来的问题的问题和每个点带出来的问题的问题的问题吧(哎,第二轮那道数学题没答出来被自己蠢哭了,不提了,都是生活 - ( ゜- ゜)つロ  乾杯~)

后记:
  • 因为住在纽约所以并没有领到信封,自己名字旁边是个0好心塞。看看其他人都是50、100的,啊哈哈哈。
  • 面完第二轮就觉得自己要被赶出去了,所以在会议室等了20分钟,听到HR姐姐说you’ve done for today的时候也没那么失望。就像和我一起出来的同胞说的,that’s a good expreience.
  • 中国大叔面试的时候真的让人感觉很温暖,满满的同胞感。不是说大叔出的题有多水什么的,是很多细节、聊天时候感受到的来自长辈的照顾、关心。现在才真切的觉得我们这些在美帝的中国人是个特殊群体,在中国长大来到美帝来读书、找工求职。所以就算不谈血浓于水炎黄子孙什么什么的,但能为同胞帮帮忙的地方尽量力所能及。想想我现在能做的就是认认真真写写面经,以后找到工作多帮小伙伴内推一下,面试看到同胞尽量在细节上关照一下。只有咱们这个群体互相帮助才能互相提高。融入美国社会什么的,我觉得水平提高到一定程度之后自然就融入了,口语啊文化啊技术啊什么的。(说的有点多了,结合最近梁警官事件的一点点感慨吧)
  • 准备面试和面试就是个不断提升自己的过程。很遗憾的,有些东西之后面试完了才发现问题。哎,都是生活。But I'd have to learn that one the hard way. 总结一下失败原因,交了学费,然后move on吧。-google 1point3acres
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
p.s. 明天(2-20)纽约华人<<游>>|行|&示&*威*有小伙伴去么?(怕被敏感词)

评分

9

查看全部评分

yyuar 发表于 2016-2-19 23:57:01 | 显示全部楼层
最后一段感想说的真好 想给你加大米 为什么不能加
回复 支持 反对

使用道具 举报

e6175423 发表于 2016-2-25 00:39:31 | 显示全部楼层
这么好的文章怎么没人赞!?只可惜我没有大米……祝楼主好运!
回复 支持 反对

使用道具 举报

jiajunxu20 发表于 2016-2-25 03:30:01 | 显示全部楼层
问楼主一下, Bloomberg 的dressing code, 是business professional吗?我明天On Campus Interview, 以前没面过金融类的
回复 支持 反对

使用道具 举报

cicean 发表于 2016-10-9 13:29:01 | 显示全部楼层
楼主,我觉得一遍交流一遍写代码其实挺有助于分析,沟通的,为啥觉得不好呢,总比闷头自己写要好。 在纽约, Yahoo 也不错 Verizon AOL 在那里,楼主也可以去玩耍一下。
回复 支持 反对

使用道具 举报

bcc 发表于 2016-10-19 07:05:38 | 显示全部楼层
lz 那个virus program是什么意思呀?
回复 支持 反对

使用道具 举报

fangwei007 发表于 2016-10-20 02:04:57 | 显示全部楼层
我觉得第一轮中国大叔其实就是想问你leetcode上那道题的思路,我觉得你应该用dp做的
回复 支持 反对

使用道具 举报

youlixiang 发表于 2016-11-17 11:23:14 | 显示全部楼层
我就是闷头写, 我分析完就开始闷头写
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-10 13:28

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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