b*e
2 楼
有一个无限长整数列,和一个长度为n的窗口,对每个i求 (i-n,i] elements的最大,
最小和中值。
最小和中值。
N*9
3 楼
脸上有些痘印儿,毛孔有些大。拜托姐妹们推荐一款好用的去痘印和收缩毛孔的精华液
,最好低敏些的,以前没用过精华液。谢谢啦谢谢拉
,最好低敏些的,以前没用过精华液。谢谢啦谢谢拉
x*o
4 楼
h
j*6
5 楼
还有一些已经毕业的人的故事呢?
z*8
6 楼
还是 two heaps吧。。。
y*j
13 楼
哪里不是呢???
A*k
19 楼
你的肤质用神仙水正好
s*5
21 楼
clemson生物工程,或医学相关的与南卡医科大学合办MUSC,所以在查尔斯顿
H*9
24 楼
大国也造假啊。
D*d
26 楼
max/min 用一个可以两面删除的 queue 就可以实现了。
median 有点麻烦,即使用两个 heap, 也很难跟踪过期的 index.
median 有点麻烦,即使用两个 heap, 也很难跟踪过期的 index.
m*g
28 楼
央视的高级黑编辑
T*y
29 楼
这周末众大妈大伯的娱乐又不愁啦
l*n
33 楼
heap
and leverage this idea
http://stackoverflow.com/a/8705527/2073130
【在 b*******e 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: 有一个无限长整数列,和一个长度为n的窗口,对每个i求 (i-n,i] elements的最大,
: 最小和中值。
and leverage this idea
http://stackoverflow.com/a/8705527/2073130
【在 b*******e 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: 有一个无限长整数列,和一个长度为n的窗口,对每个i求 (i-n,i] elements的最大,
: 最小和中值。
b*e
35 楼
还要自己编data structure么?也太复杂了吧?
n*e
36 楼
不客气,互相学习。
如前面有人提到的,这里用到double-ended queue,也就是deque。这里是求最小值的
方法,最大值的方法是相似的
input: int A[]
deque myque; // queue 里面存的是数组A的index
int i = 0
for (; i < n; i++) {
while(!myque.empty() && A[i] <= A[myque.back()] ) {
myque.pop_back();
}
myque.push_back(i);
}
// 处理后面所有的数;
while(1) {
cout << "min number for [i-n, i-1] is " << A[myque.front()];
while(!myque.empty() && A[i] <= A[myque.back()] ) {
myque.pop_back();
}
if (!myque.empty() && myque.front() + n <= i) {
myque.pop_front();
}
myque.push_back(i);
i++;
}
【在 b*******e 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: 谢谢。
如前面有人提到的,这里用到double-ended queue,也就是deque。这里是求最小值的
方法,最大值的方法是相似的
input: int A[]
deque
int i = 0
for (; i < n; i++) {
while(!myque.empty() && A[i] <= A[myque.back()] ) {
myque.pop_back();
}
myque.push_back(i);
}
// 处理后面所有的数;
while(1) {
cout << "min number for [i-n, i-1] is " << A[myque.front()];
while(!myque.empty() && A[i] <= A[myque.back()] ) {
myque.pop_back();
}
if (!myque.empty() && myque.front() + n <= i) {
myque.pop_front();
}
myque.push_back(i);
i++;
}
【在 b*******e 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: 谢谢。
n*e
37 楼
关于中值,
TopCoder里面有给出C代码,这个代码是求出每个中值后,把它们加起来。
连接:
http://community.topcoder.com/tc?module=Static&d1=match_editori
查看FloatingMedian
TopCoder里面有给出C代码,这个代码是求出每个中值后,把它们加起来。
连接:
http://community.topcoder.com/tc?module=Static&d1=match_editori
查看FloatingMedian
b*e
38 楼
用这个,最大最小值也能搞定吧。
【在 n****e 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: 关于中值,
: TopCoder里面有给出C代码,这个代码是求出每个中值后,把它们加起来。
: 连接:
: http://community.topcoder.com/tc?module=Static&d1=match_editori
: 查看FloatingMedian
【在 n****e 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: 关于中值,
: TopCoder里面有给出C代码,这个代码是求出每个中值后,把它们加起来。
: 连接:
: http://community.topcoder.com/tc?module=Static&d1=match_editori
: 查看FloatingMedian
D*d
40 楼
我没有找到 C 代码,只有 C++ 的,
我很想知道如何求 rolling median,
谢谢
【在 n****e 的大作中提到】![](/moin_static193/solenoid/img/up.png)
: 关于中值,
: TopCoder里面有给出C代码,这个代码是求出每个中值后,把它们加起来。
: 连接:
: http://community.topcoder.com/tc?module=Static&d1=match_editori
: 查看FloatingMedian
我很想知道如何求 rolling median,
谢谢
【在 n****e 的大作中提到】
![](/moin_static193/solenoid/img/up.png)
: 关于中值,
: TopCoder里面有给出C代码,这个代码是求出每个中值后,把它们加起来。
: 连接:
: http://community.topcoder.com/tc?module=Static&d1=match_editori
: 查看FloatingMedian
s*x
44 楼
是不是用order statistics tree 就统一搞定了? 反正是 log n
相关阅读
金正日下达发射火箭的命令弱弱的问一句。。。一个都没玩过的话,你的童年被猪吃了。。未来的海归,中国留学生英国豪华生活组图禁枪跟禁原子弹是一个道理正宗的花生酱是这样生产的你们跟这激动啥Re: 弱爆了背景的AP怎么申请绿卡? (转载)积极参与禁枪 (转载)这样的婚姻怎样走下去 (转载)民国时的中国足球Re: top5是交大还是复旦朝鲜人民第一次看《泰坦尼克号》,感情非常真挚,太感人肺腑了(转载)生命都是随机的人的一生真的需要几个这样的朋友,相互信赖,相互依存枪版众应该支持禁枪才对啊,就像已经拿了绿卡的反对移民城管变为猪?--福建林阳寺一放生猪犯罪率最高和最低国家排名,权威数据来了 (转载)Re: 再驳老七『赞美』不『赞美』 (转载)Re: 奥巴马下令降半旗4天为小学枪击案遇难者致哀 (转载)