几家小公司面经

原帖地址:一亩三分地

前段时间面的几家小公司的onsite面经,有需要的童鞋可以参考下。

Pocket Gems
1. Word Break
2. Reservoir sampling: 有个长度为n的stream,要在里面随机取k个数。1<=k<=n
3. 看一段代码,描述主要的functionality和过test case。主要是讲将字符串转化为二叉树
4. Design一个游戏的achievement系统,比如集齐多少金币,打了多少怪就给一些奖励。还给了requirement和player类。要求设计的系统容易拓展
5. 设计一个string类,实现一些method,要求常数空间内实现

Guidewire
1. 给一张图包含各个城市名和之间的距离,还有两个人在若干天内行程(每天在一个城市)。每天每个人可以至多移动一个城市和另一个人吃饭。求在这个行程内两个可以一起吃饭的最小可能距离。
2. 一个扑克游戏,包含对子,顺子,炸弹等。实现里面的method判断这些组合的合法性,还有comparator。要求过所有的JUnit test cases。
3. 比较inheritance和composition,写comparator,reverse linkedlist,写sql等等等。

HackerRank
1. 判断一个数能否表示成p的q次方(p>1, q>2)
2. 一个机器人在一个左右无限长的直线上,有一个金矿在直线上的某个位置,设计算法让机器人找到金矿
3. 给若干银币和各自能表示的价值,还有若干金币。银币只可表示一个价值,金币可表示任意价值。求这些金币银币能表示的最长连续整数长度。做完给了另一个task拿回家做。
4. 设计一个editor的插件,这个插件能提交代码到HackerRank,跑test cases,而且返回结果。

说了这么加点分呀