首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CLRS -随机搜索-如何计算预期的拾取数量?

CLRS -随机搜索-如何计算预期的拾取数量?
EN

Stack Overflow用户
提问于 2012-07-15 13:29:35
回答 2查看 2.3K关注 0票数 1

这是CLRS问题。这个问题来自第三版的CLRS书籍: 5-2-b。

随机搜索是一种算法,您必须随机选择一个元素,并将其与搜索到的元素进行比较。如果相等,我们需要停止。现在,假设您恰好有一个索引为i的元素,使得Ai=x (x是数组中的搜索元素)。在找到x之前,我们必须选择的进入A的索引的预期数量是多少?另外,当我们有超过1个等于x的索引值时,我们如何找到期望的索引数量?

EN

回答 2

Stack Overflow用户

发布于 2012-08-15 06:56:09

我们可以定义一个随机变量X=选择目标元素之前的迭代次数。如果将术语泛化为“迭代”称为“试验”,“选择目标元素”称为“成功”,那么X=直到成功的试验次数。

这个随机变量有一个众所周知的分布。它是给定成功概率参数p的geometric distribution。几何分布的期望值为E(X) = 1/p。

为了将几何分布应用于问题,必须确定成功的概率p。对于只有一个索引包含目标值的情况,p= 1/n,其中n是搜索集合的大小。所以在这种情况下,E(X) = n。

对于任意数量的索引映射到目标值的一般情况,p=m/n,其中m是映射到目标值的索引的数量。所以在这种情况下,E(X) =n/ m。

票数 1
EN

Stack Overflow用户

发布于 2012-07-15 13:29:35

假设在我们找到元素x之前有k次失败。所以Pr{k次失败}=k/(n-1)。现在E(X)= k=1 to n的Pr{k失败}的和。因此,E(X)=n(n+1)/2(n-1)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11489668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档