【通知】7月22,工业界资深数据科学家教你破解各大公司面试!


一亩三分地论坛

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

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

Pure Storage 面经

[复制链接] |试试Instant~ |关注本帖
linzhao115 发表于 2016-11-11 04:04:39 | 显示全部楼层 |阅读模式

2016(10-12月) 码农类 硕士 全职@Pure Storage - Other - HR筛选 Onsite 在线笔试 |Other其他

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

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

x
总共有三轮。

第一轮:Online Test. From 1point 3acres bbs
Two coding and ten multiple-choice questions.. from: 1point3acres.com/bbs


第二轮:First Onsite. from: 1point3acres.com/bbs
1. 老题。set_bits() and clear_bits().
2. 老题。callback() and fire_events(). 鏉ユ簮涓浜.涓夊垎鍦拌鍧.

第三轮:Second Onsite
1. 老题。Write a function to reverse a file in place..1point3acres缃
        Answer: Use two pointers, one reads from the beginning, one reads from the end, swap byte by byte.
        Follow up: Each read and write will incur a system call, how do you minimize the amount of system calls?. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
        Answer: We can read chunk by chunk instead (Need to modify the original function to illustrate this.).1point3acres缃
        Follow up: What can be a good chunk size? What are the factors determine a good chunk size?
        Follow up: The reverse process can be interrupted at any time, how do you make sure the file won't be corrupted, and you can resume the reverse process any time?
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
2. 新题。What data structure would you use to construct a skip list? Implement search() and insert().

3. 新题。Given a number, it will go through the following transition: if it is odd: n * 3 + 1, otherwise n / 2. Write a function that returns how many transitions would a number take to get to 1. For example, given 3, it will go through the following: 3 - 10 - 5 - 16 - 8 - 4 - 2 - 1, thus the answer is 7.
        Follow up: If you need to call this function many many times, how can you optimize it?
        Follow up: Any different data structure/approach?. visit 1point3acres.com for more.
        Follow up: If the memory is limited, what would you do?

4. Manager talk. Your background and past projects. Why would you want to work for Pure? Any questions?

====================. Waral 鍗氬鏈夋洿澶氭枃绔,

说说感想吧。前两轮感觉都很棒。第三轮有点玄,特别是第一题,虽然不难,但面试官说话很快,没什么表情,蛮intimidating的,我脑子卡了好几下。所以心理建设很重要,碰到tough的面试官我就感觉好弱 :-) 整个过程走下来,感觉他们考的算法题看上去都是不难,但follow up很多,所以discussion很重要。

大家加油!

评分

1

查看全部评分

本帖被以下淘专辑推荐:

daniel_hl 发表于 2016-11-11 05:28:26 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
LZ跟我面的题完全一样,顺序都一样
回复 支持 反对

使用道具 举报

lela900900 发表于 2016-11-11 07:20:10 | 显示全部楼层
关注一亩三分地微博:
Warald
lz 拿到offer了?
回复 支持 反对

使用道具 举报

lela900900 发表于 2016-11-11 07:20:22 | 显示全部楼层
daniel_hl 发表于 2016-11-11 05:28.鏈枃鍘熷垱鑷1point3acres璁哄潧
LZ跟我面的题完全一样,顺序都一样

你是有电面吗 还是直接onsite
回复 支持 反对

使用道具 举报

lela900900 发表于 2016-11-11 07:28:56 | 显示全部楼层
请问lz 第一题 buddy bitmap 输入是一维还是二维矩阵,节点是treenode 还是integer呢 谢谢
回复 支持 反对

使用道具 举报

daniel_hl 发表于 2016-11-11 09:29:11 | 显示全部楼层
lela900900 发表于 2016-11-11 07:20
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷你是有电面吗 还是直接onsite

我在湾区这,跟你一样,第一轮也是onsite
回复 支持 反对

使用道具 举报

 楼主| linzhao115 发表于 2016-11-11 13:00:38 | 显示全部楼层
lela900900 发表于 2016-11-11 07:28.鐣欏璁哄潧-涓浜-涓夊垎鍦
请问lz 第一题 buddy bitmap 输入是一维还是二维矩阵,节点是treenode 还是integer呢 谢谢
. 鍥磋鎴戜滑@1point 3 acres
二维矩阵。不明白你第二个问题?
回复 支持 反对

使用道具 举报

 楼主| linzhao115 发表于 2016-11-11 13:02:18 | 显示全部楼层
daniel_hl 发表于 2016-11-11 05:28
LZ跟我面的题完全一样,顺序都一样

这么巧 :-) 我这星期二面的,你什么时候呢?
回复 支持 反对

使用道具 举报

lela900900 发表于 2016-11-11 13:53:23 | 显示全部楼层
linzhao115 发表于 2016-11-11 13:00
二维矩阵。不明白你第二个问题?

喔喔 我知道了,谢谢。
我明天第一次电面,希望是这2个题。。
回复 支持 反对

使用道具 举报

daniel_hl 发表于 2016-11-11 14:58:59 | 显示全部楼层
linzhao115 发表于 2016-11-11 13:02
这么巧 :-) 我这星期二面的,你什么时候呢?

我是前一阵子面的
回复 支持 反对

使用道具 举报

划破天际 发表于 2016-11-11 15:08:46 | 显示全部楼层
很久没写码了
回复 支持 反对

使用道具 举报

winterfly 发表于 2016-11-27 16:51:48 | 显示全部楼层
想问下onsite第一题最后两个follow up怎么答?
回复 支持 反对

使用道具 举报

lela900900 发表于 2016-11-28 00:46:42 | 显示全部楼层
winterfly 发表于 2016-11-27 16:51
想问下onsite第一题最后两个follow up怎么答?

你马上onsite吗?求问电面两轮的面经~~我马上电面第二轮
回复 支持 反对

使用道具 举报

RubyZhu09 发表于 2017-1-2 17:10:29 | 显示全部楼层
楼主泥还在么~~想问下  第三轮的第二题 难道不是直接对 list 进行 next next 操作就口以了嘛。。。。还是我理解错了呢 谢谢谢谢 楼主!
回复 支持 反对

使用道具 举报

RubyZhu09 发表于 2017-1-2 17:30:04 | 显示全部楼层
winterfly 发表于 2016-11-27 16:51
想问下onsite第一题最后两个follow up怎么答?

求问 你弄清楚这两个follow up 怎么答啦嘛 谢谢谢谢!
回复 支持 反对

使用道具 举报

rayord 发表于 2017-2-7 14:34:05 | 显示全部楼层
callback那个题, 用单线程实现了下,用了一个queue和flag,event_fired之前的都推入queue,之后的直接被reg_cb调用。但是不明白多线程那部分,请问在哪个地方多线程?实在没明白让用多线程干啥?可否回忆一下呢?谢谢啦
回复 支持 反对

使用道具 举报

辉哥哥 发表于 2017-2-8 07:09:19 | 显示全部楼层
rayord 发表于 2017-2-7 14:34
callback那个题, 用单线程实现了下,用了一个queue和flag,event_fired之前的都推入queue,之后的直接被re ...

在单线程中你用flag来判断是否需要入堆。 现在有这样一种情况:有一个线程1读取了flag并且这个时候这个值是false,所以你需要把event1 push到堆栈。可就在你读取完flag的值,还没有把event1 加入到堆栈的时候,另外一个线程2调用的event_fired,并且清空了堆栈。然后线程1把event1push到堆栈,那么这个event1就永远死在堆栈里里。
回复 支持 反对

使用道具 举报

weiyinghkl 发表于 2017-4-5 13:37:03 | 显示全部楼层
有一点疑问,读完flag的值为什么马上释放锁?把event push到堆栈应该不是耗时操作,做完了再释放锁,event_fire再被调用不就没有死锁了?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-7-21 17:06

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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