新人贴: 2诗歌码跪经

周一面的Two Sigma, 现在刚刚拿到消息,已挂。

套路基本一样,自我介绍,简历问题,thread 还有process的问题。

之前把电面的面筋都看了一遍,唯一漏掉的就是多线程的问题(只看了概念)因为觉得不会考。。。。。

结果面我的老头(似乎是个VP)就出了到多线程给我,题目不难,但是表示那时候很慌,结果最后写完之后test case抖跑不过。

在那边和老头一起debug 了快半小时都没做出来, 老头也说不来为啥错了。。 结束老头就说了句 keep in touch,估计是新的good luck 的意思…

题目如下:

一个void generator (int ms, int bufferSize), 每隔 m (ms) 会generate 一个token 到queue 里面。 另外一个int getter(int desiredAmount) 去queue 里面fetch 它最大可以拿的数目,就是如果queue 里面的size大于它想要的,那么就返回那个desiredAmount,不然就直接返回当前queue 所有的数目。

我用了个不熟的synchronousQueue来做,其实应该直接用锁就好了,对queue的size 来增加减少,那时候也没想出来。。。

多谢分享,赞

是电面还是onsite呀?

我的是电面。

请问楼主面的是2sigma下面哪个子公司? 电面要求code可以compile吗?

总的公司好像,要compile要过test…

求问楼主,题目中的bufferSize是什么?
还有desiredAmount指的是想要拿到的token的数量吗?比如queue里有10个tokens, 那么getter(5)会返回queue里的前5个token,getter(10)或者getter(15)会返回queue里全部的10个tokens?

对的,最多拿到queue 的cap, 希望你面试顺利。

感谢楼主回复