mysql 概率随机算法_概率分析与随机算法

本文探讨了指示随机变量在概率分析中的作用,特别是在计算期望值时的简化性质。通过举例说明如何利用随机算法分析MySQL中的面试雇佣问题,讨论了随机算法的期望运行时间和平均成本。同时,介绍了两种不同的随机算法实现方式,包括数组的随机排列方法,并证明了这些方法能生成均匀随机序列。
摘要由CSDN通过智能技术生成

指示随机变量

指示随机变量(indicator random variable,IRV)是概率分析中非常重要的一种离散随机变量,其用来表征某事件是否发生。更加具体的,假设事件A发生,变量IRV取值为1,否则取值为0. 数学上表述为:

equation?tex=I%5C%7BA%5C%7D%3D%5Cbegin%7Bcases%7D+1%26+%5Ctext%7Bif+A+happens%7D+%5C%5C+0+%26+%5Ctext%7Botherwise%7D+%5Cend%7Bcases%7D

指示随机变量是采用概率分析问题的一中基本手段。那么为什么要采用这种随机变量呢?首先:指示随机变量非常简单,对于任何概率问题都是可行的,并且该随机变量取值也比较简单。

指示随机变量可分解性质(尽管某事件之间存在关联),从而其能够在求取期望值时的良好数学性质。

例如,假设我们抛N次硬币,每次抛硬币都可能存在两种取值,朝上或者朝下,我们用0和1表示,他们是等概率出现的。我们问出现正面朝上的期望值?

用X表示抛N次硬币,正面朝上总次数的期望值。那么我们可以将X分解,假设

equation?tex=X_i 表示第i次抛硬币,出现正面朝上的事件。那么抛N次硬币的正面朝上总次数可以表示为:

equation?tex=X+%3D+%5Csum_iX_i

因此在计算

equation?tex=E%5BX%5D%3DE%5Cleft%5B++%5Csum_iX_i+++%5Cright%5D+%3D%5Csum_i+E%5Cleft%5BX_i%5Cright%5D+%3D%5Csum_i+%5Cfrac12%3D%5Cfrac+n2

上面我们采用了指示随机变量,即

equation?tex=E%5BX_i%5D%3D%5Ctext%7BPr%7D%5BX_i%5D%5Ctimes1%2B%5Ctext%7BPr%7D%5BX_i%5D%5Ctimes+0%3D%5Cfrac12引理:给定一个样本空间S和S中的一个事件A,设

equation?tex=X_A+%3D+I%5C%7BA%5C%7D ,那么

equation?tex=E%5BX_A%5D%3D%5Ctext%7BPr%7D+%5C%7BA%5C%7D .

随机算法

一般的,如果一个算法的行为不仅由输入决定,而且也由随机数生成器产生的数值决定,则称这个算法是随机的。这里,输入是指一个未知的数据分布,这个数据我们无法准确建模,只能采用一些概率知识进行分析。另外,在算法执行过程中,某些关键步骤仍然是由电脑产生的随机数决定,即是说算法的执行是不确定的。

实际上,所有的采样算法都是随机的,包括Metropolis算法,权重采样算法等。具体的采样算法简介可以参考本人之前写的文章。科学摆渡人:采样方法(Sampling Method)​zhuanlan.zhihu.comc57cfa92a092182de796c1399bfefc26.png

在分析一个随机算法的运行时间时,我们以运行时间的期望值衡量,其中输入值由随机数生成器产生。我们将一个随机算法的运行时间称为期望运行时间,以此来区分这类算法和那些输入是随机的算法。一般而言,当概率分布是在算法的输入上时,我们讨论的是平均情况运行时间;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值