【问题标题】:Probability of finding the median with finite space找到有限空间中位数的概率
【发布时间】:2011-03-23 15:39:48
【问题描述】:

这是 StackOverflow question 的衍生产品。

假设您有固定数量的 k 个存储位置,以及两个计数器的空间。您将以随机顺序收到 n 个项目(n 个项目的所有排列可能性相同)。收到每个项目后,您可以将其存储在 k 个位置之一(丢弃先前存储的值之一),或丢弃该项目。您还可以增加或减少任一计数器。任何丢弃的物品都无法找回。

问题是

  1. 什么策略可以最大限度地提高找到准确中位数的概率?
  2. 这个概率是多少?

显然,如果k > n/2,我们可以找到中位数。一般来说,尝试保持丢弃的高值的数量等于丢弃的低值的数量的相同策略似乎应该是最佳的,但我不知道如何证明它,也不知道如何计算它找到的概率中位数。

同样有趣的是我们不知道 n 但知道 n 的概率分布的情况。

编辑:现在假设值是不同的(没有重复)。但是,如果您也可以解决非不同的情况,那将是令人印象深刻的。

【问题讨论】:

    标签: algorithm probability


    【解决方案1】:

    Munro 和 Paterson 在他们的论文 Selection and sorting with limited storage 中基本上研究了这个问题。他们表明,您的算法需要 k = Ω(√n) 以恒定概率成功,并且通过诉诸关于一维随机游走的基本结果,这是渐近最优的。

    如果我想证明绝对最优性,我会尝试的第一件事是考虑任意算法 A,然后它的执行与算法 A' 相结合,该算法 A' 第一次偏离 A你的算法,你的算法会做,然后尝试尽可能接近 A。

    【讨论】:

      【解决方案2】:

      一个大胆的猜测:丢弃离当前存储值的均值最远的元素。

      如果值的分布是多模式的并且我们首先从非支配模式中获取值,则与当前的中位数比较不起作用。

      【讨论】:

      • 我们不一定能够计算平均值。所有中位数需要的是一个总排序,平均值需要算术属性。如果所有排列都同样可能,多模态可能不是问题,但这确实提醒我,我可能应该注意到这些值可以被认为是不同的。 (我认为这使数学更容易。)
      • 嗯,很有趣。我没有考虑过非数字值。
      猜你喜欢
      • 2018-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-04
      • 1970-01-01
      • 2015-02-14
      • 2020-08-17
      • 2019-11-10
      相关资源
      最近更新 更多