中位数选择的存储要求(两次通过算法)


18

在一篇经典论文中,Munro和Paterson研究了算法在随机排序的数组中查找中位数需要多少存储量的问题。他们特别关注以下模型:

输入从左到右被读取P次。

证明存储单元就足够了,但是只有P = 1才知道相应的下界。对于P> 1,我没有看到任何结果。有人知道这样的下限吗? Øñ1个2P

注意这里的主要困难是在第二遍输入不再是随机排序的。

Answers:



18

证明突破1次合格的第一篇论文是我与SODA'08的Jayram和Amit的论文。然后是沃伦(Warren)提到的论文,它通过更清晰的证明来改善界限。

简而言之,如果您允许通过次数前面的常量,我们会理解这种依赖性。当然,这些常数在指数中,因此您可以要求精确的了解。我主要抱怨的是,多通道流传输模型的动机不是很好。

更有意思的问题是,我们是否可以证明分支程序的下限。难道即使对于可以根据需要访问内存的有界空间算法,最好的策略就是仅执行多遍流传输?

答案似乎是肯定的,我们在证明这一问题上还取得了部分进展。


5
我认为在以下类型的实验中,多通道流传输自然的模型:您使用随机抽样进行统计测试(例如,置换测试)。您进行了数十亿次实验;每个实验都从PRNG获取随机数,并产生一些输出值。然后,您要计算这些值的中位数,直方图等。您没有对输出流的有效随机访问,也没有存储所有内容的内存。但是,您可以重新播放流;只需使用相同的种子重置PRNG,然后重新运行算法即可。
Jukka Suomela

2
我们都可以同意,最好的做法是在多通道流传输模型中具有上限,并在某些相关的分支程序族中匹配其下限。
MassimoLauria
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.