由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - dropbox 面经
相关主题
阿家Prime组新鲜面经G onsite面经兼求内推
G电面F电面,居然被问了同一题谁能科普Time Series Daemon (TSD)系统设计
一道onsite题目求指导What's the algorithm to solve this problem?
请教: 想用java实现解析parse一个log文件,多谢指点一道java面试题
L面经,请大家帮我看看问道算法题。
Dropbox电话面经Amazon面试题
面完了G一道rf的面试题
问两道onsite题目请教一题,关于interval
相关话题的讨论汇总
话题: curtime话题: lapsed话题: hits话题: int
进入JobHunting版参与讨论
1 (共1页)
c*****n
发帖数: 95
1
第一题phone number to words. 被怀疑刷过题,如实回答后直接进入第二题。
design hit logger, return number of hits in last 5 mins.
看到有人被问到这题,大概思路对了,用的rotation array, 但在清空的环节上卡住
了。 哎,还是大意了。
感觉面试的题还是很tricky的。
j******o
发帖数: 4219
2
别承认刷过题不就行了,难道公司还想找没刷过题还能BUG FREE的人?
c*****n
发帖数: 95
3
很难装没做过吧。。。做没做过,还是很容易看出来的
真的是水涨船高。。。
d******e
发帖数: 2265
4
这个直接用tail加上一个filter就可以吧。

【在 c*****n 的大作中提到】
: 第一题phone number to words. 被怀疑刷过题,如实回答后直接进入第二题。
: design hit logger, return number of hits in last 5 mins.
: 看到有人被问到这题,大概思路对了,用的rotation array, 但在清空的环节上卡住
: 了。 哎,还是大意了。
: 感觉面试的题还是很tricky的。

c*****n
发帖数: 95
5
class logger{
vector hits(300);
long startTime;
long lastTimeCalled;
public:
logger() {
lastTimeCalled = -1;
startTime = time();
}

void zeroOut(int lapsed) {
int lastPos = lastTimeCalled % 300;
if(lapsed >= 300) {
for(int i = 0; i < hits.size(); i++) {
hits[i] = 0;
}
} else if(lastTimeCalled != -1){
for(int i = lastPos + 1; i < lastPos + lapsed; i++) {
hits[i % 300] = 0;
}
}
}

void logHit() {
long curTime = time() - startTime;
long lapsed = curTime - lastTimeCalled;
curSecond = curTime % 300;
zeroOut(lapsed);

if(curSecond == lastTimeCalled % 300) {
hits[curSecond]++;
} else {
hits[curSecond] = 1;
}
lastTimeCalled = curTime;
}

int getHitLastFiveMin() {
// need to do similar things here
long curTime = time() - startTime;
long lapsed = curTime - lastTimeCalled;
zeroOut(lapsed);
lastTimeCalled = curTime;
int res = 0;
for(int i = 0; i < hits.size(); i++) {
res += hits[i];
}
return res;
}
}
c*****n
发帖数: 95
6
似乎用一个linked list 实现会更简单啊。每个node 都保存一个timestamp
g****v
发帖数: 971
7
楼主能分享下为什么需要清空和怎么清空么?

【在 c*****n 的大作中提到】
: 第一题phone number to words. 被怀疑刷过题,如实回答后直接进入第二题。
: design hit logger, return number of hits in last 5 mins.
: 看到有人被问到这题,大概思路对了,用的rotation array, 但在清空的环节上卡住
: 了。 哎,还是大意了。
: 感觉面试的题还是很tricky的。

c*****n
发帖数: 95
8
已经把代码贴出来了。不过觉得这题用fix length array 实现不是很好。会涉及到清
空的问题,弄起来很麻烦。
比较简单的做法应该用linkedlist ?
每个node保存一个timestamp, 一个头指针,一个尾指针。当要getCounts 时,从头开
始往后扫。如果curTime - timestamp > limit, 就不计数,并且删掉节点。

【在 g****v 的大作中提到】
: 楼主能分享下为什么需要清空和怎么清空么?
1 (共1页)
进入JobHunting版参与讨论
相关主题
请教一题,关于intervalL面经,请大家帮我看看
请教亚麻一道onsite面试题Dropbox电话面经
请教一个API设计的面试题面完了G
对角线Sum 螺旋(线)问两道onsite题目
阿家Prime组新鲜面经G onsite面经兼求内推
G电面F电面,居然被问了同一题谁能科普Time Series Daemon (TSD)系统设计
一道onsite题目求指导What's the algorithm to solve this problem?
请教: 想用java实现解析parse一个log文件,多谢指点一道java面试题
相关话题的讨论汇总
话题: curtime话题: lapsed话题: hits话题: int