一亩三分地论坛

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

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

Pure Storage OA (Engineering Chanllenge 4A)

[复制链接] |试试Instant~ |关注本帖
jixiang719 发表于 2016-3-9 09:39:43 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类 硕士 全职@Pure Storage - 网上海投 - 在线笔试 |Failfresh grad应届毕业生

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

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

x
早上刚做了他家的OA,已挂, 叫 engineer challenge 4A, 在hackerrank上面,一共八题,时间非常紧张,6题填空,两题Coding, 第二题 Coding说是bonus但是感觉也算分。

一共60分钟,建议在地里看面经先还原一遍再做,不然很可能做不完。

1. 第一题

计算题,7个硬盘串在一起,每个513GiB,问花多久能写满86%的硬盘,已知写入速度是200000次操作每秒,其中20%的操作是写512B, 30%写1024B, 40%写4096B, 10%写16384B,我的答案是75min。

2. 给了一个DFS遍历树的代码,递归,每层访问顺序是右,母,左,然后给一个树的图,问要找到target number 12,这个程序中途跑过的路径所有的数打出来是多少。. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷

3. 问用什么数据结构,要求100000000000次插入,插入后不用删除,数据里有object和timestamp,不用多线程,偶尔需要根据timestamp有序遍历这个数据结构。多选题。我选的array,要遍历的时候quick sort,或者linked list,或者preallocated array,timestamp作为index。 另外的选项是hashmap, 自平衡树, 或者每次插入都排序的数组。

4. 计算题。 memory page,答案 5 Bytes

5. 给一个C语言的程序,写的是一个数据结构实现,过程中写了lock 和 release, 问你这个程序有没有问题,多选题,潜在问题是什么,memory leak, thread unsafe什么的, 多线程学得不好,后面时间也很紧,这题不是很确定。
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
6. 给一个Binary Search的代码,要你写个代码打印出这个BS错误情况的代码,打印3行,第一行 你的test case的数组大小,第二行你的test case 数组, 第三行你要查找的数。 代码明显的错误就是loop里没有写array[mid] == target 的情况,所以你的test case直接找数组的中间项就行

7. Coding 给一个String,要你数substring里面的palindrome, 我写了一个暴力写法, 两个loop, 用对撞型two points判断每一个substring,然后count就可以了,没有TLE,不知道有没有更优的解法。. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴

8. Coding 楼主这题没有写完,其实不难,就是给你一个String 数组,里面有很多events,比如“ACQUIRE 96” "RELEASE 96" “ACQUIRE 123”,算法思路其实就是valid parentheses, 用一个stack push pop, 但是程序的输出要求是数,如果没问题输出-1,如果有问题输出哪里有问题。
. 鍥磋鎴戜滑@1point 3 acres

他家主要用C++, 做的东西比较偏底层,重视多线程和performance,如果想去的话OA一定要事先把练好到全对再去做,onsite听说题不变,录不录看人品。

给这个月的3个Onsite攒人品啦~

评分

6

查看全部评分

windywinter 发表于 2016-7-9 22:31:05 | 显示全部楼层
何打发123 发表于 2016-7-9 00:45
请问您能多说一下选择题您怎么做的吗?~ 数据结构那个 是不是选linkeslist merge sort? insert 和quicks ...
-google 1point3acres
时间太久了,早记不得了。
回复 支持 1 反对 0

使用道具 举报

toro 发表于 2016-8-2 04:06:39 | 显示全部楼层
谢谢楼主分享!
回复 支持 1 反对 0

使用道具 举报

windywinter 发表于 2016-3-31 01:22:47 | 显示全部楼层
tianqing705 发表于 2016-3-10 00:54
谢谢分享,所以6天过去了都没信说明还有点戏?我代码是都过了的,但是有一两个多选题不确定。听说要全对 ...

全对才有电面有点太扯了吧。
像设计数据结构那个题,答案取决于怎么理解occasionally和worst case,已经怎么做trade off啊,明显好几个选项都是有道理但不一定对吧。.1point3acres缃
-------
昨天做了这个OA,自觉地做的很好了,结果今天HR直接发来拒信
回复 支持 1 反对 0

使用道具 举报

zhuwei0529 发表于 2016-3-9 12:46:25 | 显示全部楼层
谢谢楼主分享!
回复 支持 反对

使用道具 举报

tianqing705 发表于 2016-3-10 00:17:26 | 显示全部楼层
lz为啥说已挂,是指做完过一会就发拒信了吗?
回复 支持 反对

使用道具 举报

 楼主| jixiang719 发表于 2016-3-10 00:47:52 | 显示全部楼层
tianqing705 发表于 2016-3-10 00:17
lz为啥说已挂,是指做完过一会就发拒信了吗?

过了半天发的拒信吧
回复 支持 反对

使用道具 举报

tianqing705 发表于 2016-3-10 00:54:52 | 显示全部楼层
jixiang719 发表于 2016-3-9 11:47
过了半天发的拒信吧

谢谢分享,所以6天过去了都没信说明还有点戏?我代码是都过了的,但是有一两个多选题不确定。听说要全对才有电面,但是还是没有拒我有点奇怪。
回复 支持 反对

使用道具 举报

wxtvxq 发表于 2016-3-10 03:55:29 | 显示全部楼层
谢谢楼主分享 祝楼主onsite顺利
回复 支持 反对

使用道具 举报

 楼主| jixiang719 发表于 2016-3-10 10:56:57 | 显示全部楼层
tianqing705 发表于 2016-3-10 00:54
谢谢分享,所以6天过去了都没信说明还有点戏?我代码是都过了的,但是有一两个多选题不确定。听说要全对 ...

应该靠谱,可以去催一发。。
回复 支持 反对

使用道具 举报

tianqing705 发表于 2016-3-10 11:12:16 | 显示全部楼层
jixiang719 发表于 2016-3-9 21:56
应该靠谱,可以去催一发。。

嗯嗯,今天下午催了,HR回我说还要engineer看我的代码还是啥,最晚明天会告诉我结果。
回复 支持 反对

使用道具 举报

harryhu0705 发表于 2016-3-30 02:53:59 | 显示全部楼层
3. 问用什么数据结构,要求100000000000次插入,插入后不用删除,数据里有object和timestamp,不用多线程,偶尔需要根据timestamp有序遍历这个数据结构。多选题。我选的array,要遍历的时候quick sort,或者linked list,或者preallocated array,timestamp作为index。 另外的选项是hashmap, 自平衡树, 或者每次插入都排序的数组。. From 1point 3acres bbs
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
楼主这个问题,我想请教一下,你如果用preallocated array,timestamp作为index那样的话,会不会占用很大的空间比如说,我的timestamp是1,5,6. 那么index从2-4的位置就被空下了,那样不会多占用一些空间么。
回复 支持 反对

使用道具 举报

 楼主| jixiang719 发表于 2016-3-31 00:13:19 | 显示全部楼层
harryhu0705 发表于 2016-3-30 02:53
3. 问用什么数据结构,要求100000000000次插入,插入后不用删除,数据里有object和timestamp,不用多线程, ...

有道理,的确有可能很多空间有浪费。。
回复 支持 反对

使用道具 举报

harryhu0705 发表于 2016-3-31 07:02:10 | 显示全部楼层
windywinter 发表于 2016-3-31 01:22
全对才有电面有点太扯了吧。
像设计数据结构那个题,答案取决于怎么理解occasionally和worst case,已经 ...

握个手 一样的
回复 支持 反对

使用道具 举报

windywinter 发表于 2016-4-5 09:13:14 | 显示全部楼层

特么的HR说就是那两个选择题做的不好
这么僵化的公司不去也罢
回复 支持 反对

使用道具 举报

何打发123 发表于 2016-7-9 00:45:00 | 显示全部楼层
windywinter 发表于 2016-4-5 09:13
特么的HR说就是那两个选择题做的不好.鐣欏璁哄潧-涓浜-涓夊垎鍦
这么僵化的公司不去也罢

请问您能多说一下选择题您怎么做的吗?~ 数据结构那个 是不是选linkeslist merge sort? insert 和quicksort最坏情况都可能是n^2啊~  空间复杂度怎么考虑呢~
回复 支持 反对

使用道具 举报

lordstone 发表于 2016-10-29 09:58:51 | 显示全部楼层
harryhu0705 发表于 2016-3-30 02:53
3. 问用什么数据结构,要求100000000000次插入,插入后不用删除,数据里有object和timestamp,不用多线程, ...

100,000,000,000 = 100 billion = 95,376mb ~= 93 Gbit. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
我觉得array的话肯定不行吧..应该要preallocated array吧..
回复 支持 反对

使用道具 举报

lordstone 发表于 2016-10-29 10:06:22 | 显示全部楼层
lordstone 发表于 2016-10-29 09:58
鏉ユ簮涓浜.涓夊垎鍦拌鍧. 100,000,000,000 = 100 billion = 95,376mb ~= 93 Gbit
我觉得array的话肯定不行吧..应该要preallocated ...

关键是nlogn让这个n变成 100 billion 就会变得很大..所以我觉得inplace sort应该不大可能,必须要preallocated array或者hash吧..各位怎么看

补充内容 (2016-10-29 10:08):
n log (n) = 3,654,120,904,376 = 3.65 trillion
回复 支持 反对

使用道具 举报

lordstone 发表于 2016-10-29 10:08:08 | 显示全部楼层
n log (n) = 3,654,120,904,376 = 3.65 trillion
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-4 15:18

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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