一亩三分地论坛

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

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

Indeed AppDev Engineer 跪了!!~!~~

[复制链接] |试试Instant~ |关注本帖
wenxiao1987 发表于 2016-9-11 23:20:19 | 显示全部楼层 |阅读模式

2016(7-9月) 码农类 硕士 全职@Indeed - 网上海投 - Onsite |Fail在职跳槽

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

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

x
第一轮: Behavior Question with Senior Product Manager. (45 Mins)
第二轮: System Design: how to build an e-commerce website which can compete with amazon with high-level abstraction. Draw database schema. 我从scalibity讲了vertical scale, horizontal scale, load balancer大概讲了10分钟,然后花了15分钟画图。
follow up: if our fulfillment service can only process 100 shipping information at 1 min. How to design a method to meet the requirement.
我说的用一个queue,基于它的特性就是FIFO,设一个timer,把queue当做sliding window, 用currTime - queue.peek().time > 1 && queue.size() <=100 来作为constrains来保证100/min.
第三轮:算法题: 就是给你一段String[] = {"we all love indeed, and everyone use python and nobody like java, but we would hire java developer"}; 让你return result = and everyone use python and nobody like java, but we would.这道不难,就维护两个指针 pre and post. 把这段话分成3段存入result =[pre-3 to pre]+ python ==== java + [post to post +3]. 这题有点小bug.因为刷题的习惯不同,他要求的constractor不知道怎么弄。弄了半天都没时间了。晚上回家发现忘记用word.split(“ ”); 我晕,太傻了。这个code没有那个split()根本跑不了,这次肯定悲剧了。
第四轮:算法题:consensus algorithm, 就是给你一堆stream input比如 s1 = [0 , 1, 3, 5] s2= [0, 1, 213, 444] s3= [0, 1, 2, 3, 4]. 给你一个target.比如target = 3 你就必须return [0, 1].意思就是0和1在不同的list出现了3次。我想了半天,给了个solution,用hashmap<integer,List<integer>> 来存每个数,然后如果有相同的value, key就可以存到那个list 里面,然后判定下list.size()=target,然后就可以把那个数存入reusult里,结果他说内存不够用。不让我写,最后我想了半天实在想不出来了,他给我说他的想法,让我implement出来。时间太短,根本写不完。
第五轮:Behavior Question with Senior Product Manager (45 min)
总结:这次的面试还是准备不充分,没有刷更多的题,抱着只要看面筋的题就行了,投机取巧还是得看运气,在以后的职场生活是走不通的。

评分

1

查看全部评分

dfsocean 发表于 2016-9-12 20:52:50 | 显示全部楼层
谢谢楼主分享~请问楼主第三题要用什么规则返回的字符串?
回复 支持 反对

使用道具 举报

gamesover 发表于 2016-9-12 22:27:11 | 显示全部楼层
求lz第四题思路,我也只能想到dictionary的方法
回复 支持 反对

使用道具 举报

 楼主| wenxiao1987 发表于 2016-9-12 22:30:17 | 显示全部楼层
dfsocean 发表于 2016-9-12 20:52
谢谢楼主分享~请问楼主第三题要用什么规则返回的字符串?

不需要什么规则,stringBuffer string[] 都可以。
回复 支持 反对

使用道具 举报

 楼主| wenxiao1987 发表于 2016-9-12 22:32:37 | 显示全部楼层
gamesover 发表于 2016-9-12 22:27
求lz第四题思路,我也只能想到dictionary的方法

维护一个min = integer.max. int cur = sample.iterator.next(); 然后每个next()出来的数跟min比较,然后在来一个counter. 我也记不清了。
回复 支持 反对

使用道具 举报

laonong15 发表于 2016-9-20 12:40:52 | 显示全部楼层
第四轮:算法题:consensus algorithm, 就是给你一堆stream input比如 s1 = [0 , 1, 3, 5] s2= [0, 1, 213, 444] s3= [0, 1, 2, 3, 4]. 给你一个target.比如target = 3 你就必须return [0, 1].意思就是0和1在不同的list出现了3次。我想了半天,给了个solution,用hashmap<integer,List<integer>> 来存每个数,然后如果有相同的value, key就可以存到那个list 里面,然后判定下list.size()=target,然后就可以把那个数存入reusult里,结果他说内存不够用。不让我写,最后我想了半天实在想不出来了,他给我说他的想法,让我implement出来。时间太短,根本写不完。

是不是 应该:
Map<value, count>  来存 数  , yong 一个list 放结果  
读每个Stream 的数的时候时候 检查是不是已经在 结果 list中
如果不存在, 更新 map, 如果count超过K 就放到 result list 里面 然后从 map中remove掉这个number
这样map只存放不满足条件的 数   结果list中只存放满足条件的数  这样应该没有 内存问题。

如果某个stream过大, 不能读入内存,  可不可以  .鐣欏璁哄潧-涓浜-涓夊垎鍦

1. 在datasource 里面就 分成若干个小部分  然后 依次读入

2. 或者 给出 startindex,和 end index  分段读入stream  比如 内存只能放1million data  就  每次读入这么多 然后依次读入处理

不知道是否理解错了


回复 支持 反对

使用道具 举报

 楼主| wenxiao1987 发表于 2016-9-21 03:12:12 | 显示全部楼层
laonong15 发表于 2016-9-20 12:40. more info on 1point3acres.com
第四轮:算法题:consensus algorithm, 就是给你一堆stream input比如 s1 = [0 , 1, 3, 5] s2= [0, 1, 213, ...

他不要让我用hashmap一是内存需求太大,二是不是in order的排序,你弄完了result还得sort一下这个算法不是最优。他不让用hashmap来做。
回复 支持 反对

使用道具 举报

Michaelcat 发表于 2016-9-22 02:37:56 | 显示全部楼层
谢谢楼主分享~请问楼主第三题要用什么规则返回的字符串?还有第四题是不是inorder的?
回复 支持 反对

使用道具 举报

 楼主| wenxiao1987 发表于 2016-9-22 08:32:46 | 显示全部楼层
Michaelcat 发表于 2016-9-22 02:37
谢谢楼主分享~请问楼主第三题要用什么规则返回的字符串?还有第四题是不是inorder的?

第三题不需要什么规则只要打印出来他要求的,第四天return的结果是要inorder,所以不能用hashmap,不然最后还得sort一下。
回复 支持 反对

使用道具 举报

xiaoxiao0801 发表于 2016-9-22 11:11:59 | 显示全部楼层
谢谢楼主分享 想请教下第4题 能改input数组吗 如果能改 是不是可以把那些数组排序 类似merge k sorted list方法做?每轮检查k个指针所指的数里 有多少个等于当前最小堆堆顶 如果数目等于target就输出
回复 支持 反对

使用道具 举报

 楼主| wenxiao1987 发表于 2016-9-22 11:22:28 | 显示全部楼层
xiaoxiao0801 发表于 2016-9-22 11:11
谢谢楼主分享 想请教下第4题 能改input数组吗 如果能改 是不是可以把那些数组排序 类似merge k sorted list ...

不能改数组跟merge k sorted list不一样。
回复 支持 反对

使用道具 举报

 楼主| wenxiao1987 发表于 2016-9-22 11:24:55 | 显示全部楼层
wenxiao1987 发表于 2016-9-22 08:32. 1point 3acres 璁哄潧
第三题不需要什么规则只要打印出来他要求的,第四天return的结果是要inorder,所以不能用hashmap,不然最 ...

就是检查python 和 java的key word, 如果遇到了就return 前面三个Word python -> java中间所有的words,和Java后面三个words.
回复 支持 反对

使用道具 举报

robotwish 发表于 2016-9-22 16:16:26 | 显示全部楼层
楼主第四题,给的数组既不是sort的,又不能改数组, 从你的意思还是要O(1)的space做? 一个min怎么维护的过来啊?
回复 支持 反对

使用道具 举报

 楼主| wenxiao1987 发表于 2016-9-22 20:58:10 | 显示全部楼层
robotwish 发表于 2016-9-22 16:16
楼主第四题,给的数组既不是sort的,又不能改数组, 从你的意思还是要O(1)的space做? 一个min怎么维护的过 ...

反正他不让用HashMap。
回复 支持 反对

使用道具 举报

laonong15 发表于 2016-9-22 23:51:38 | 显示全部楼层
xiaoxiao0801 发表于 2016-9-22 11:11
谢谢楼主分享 想请教下第4题 能改input数组吗 如果能改 是不是可以把那些数组排序 类似merge k sorted list ...

这是正解,就是把每个stream 看成一个linked list  就变成merge k sorted list 了
回复 支持 反对

使用道具 举报

robotwish 发表于 2016-9-23 02:34:29 | 显示全部楼层
laonong15 发表于 2016-9-22 07:51
这是正解,就是把每个stream 看成一个linked list  就变成merge k sorted list 了

我也觉着每个stream要sort好才能做吧,每次取一个最小的,然后count一下当前每个stream指针处等于这个min,count等于target就加入这个min的结果,然后前进指针
回复 支持 反对

使用道具 举报

mooc 发表于 2016-11-3 08:58:07 | 显示全部楼层
lz, 第三题需要用kmp算法吗?
回复 支持 反对

使用道具 举报

Ayu1991 发表于 2016-11-13 09:12:16 | 显示全部楼层
请问楼主能说说系统设计的详细解法吗多谢啦
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-8 02:42

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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