概率怀疑

时间:2011-02-06 10:25:25

标签: distribution probability

我正在研究一个问题 - 有一组最初无序的数字。目标是对它进行排序。排序应该通过洗牌来完成,直到它们落入正确的位置(是的,Bogosort'ish :))洗牌有一个优化,如果在洗牌之后,任何朝向开头或列表末尾的元素都落入正确的位置,这些元素将被修复,剩余的元素将使用上述相同的逻辑进行洗牌。问题是计算对最初无序数字组进行排序所需的平均数量f shuffles,比如说6。 我知道它沿概率线的分布顺序,但我不能完全归零它。任何有关正确方向或方法的建议/建议都将不胜感激。

由于

1 个答案:

答案 0 :(得分:1)

这可以递归计算。

  • 长度为0的列表平均需要0次shuffle。 f(0)= 0。
  • 长度为1的列表平均需要0次shuffle。 f(1)= 0。
  • 洗牌后长度为2的列表有几种可能性:
    • 已经排序(50%几率):0次随机播放。
    • 尚未排序(50%偶然):
      • Shuffling对它进行排序:1次随机播放。
      • 改组没有用,我们需要再试一次:1 + f(2)shuffle。

这个cna写成:

f(2) = ((1/2) * 0) + ((1/2) * (1/2) * 1) + ((1/2) * (1/2) * (1 + f(2)).
f(2) = 2/3

您可以通过这种方式继续将更大的输入减少到已经解决的较小输入。