snapchat onsite跪经

原帖地址:一亩三分地

第一轮国人小哥中文面的,给一个List of meetings, meetings有起始时间,求meetings的arrangement,返回的是哪个meeting Room被排了哪些面试。

第二轮1. class Throttler {
int qps;
public Throttler(int qps) {
}
pubilc boolean allowAccess() {
}
}
给这么一个class实现rate limiter,allowAccess()返回的事当前时间的access能不能被批准
举个栗子:
qps是2
request1 time 0.0 return true;
request2 time 0.5 return true;
request3 time 0.6 return false;
2. Given List, String para, 返回包涵所有word最短的一段话,返回String
先把word简化成character来做的,就是LC的minimum window substring,最后时间不够没写完,感觉gg在这里了

第三轮
1.给一个单核CPU的log,parse log,每一行log三列分别是jobname(String) start/end(boolean) timeStamp(long)

name(String) start/end(boolean) timeStamp(long) . from: 1point3acres.com/bbs
f1 start 0
f2 start 2
f3 start 4
f3 end 5
f2 end 8
f1 end 9

上面log的意思是我们在0开始做f1
在2的时候切换到f2,
4的时候开始做f3,
5的时候f3结束
要返回每个function要用的时间
这个input的返回就是
f1 : 3
f2 : 5
f3 : 1

2.在terminal里输入文件名的一部分然后按tab补全,求能找到target文件要输入string的最短长度

3. 写一个可以被多线程访问的计数器??每被访问一次count++,check被访问次数的method并不常用

第四轮,第四轮是我面的最迷的一轮,前半段连写了三道简单题 reverse linkedList, 按层打印树,和LC reverse words in a string
后半部分在讨论如何用4G的RAM sort硬盘里100G文件的问题,可以加额外的硬盘,要尽量使用时尽量短