选读算法导论5.2 指示器随机变量

为了分析包括包括雇佣分析在内的许多算法,我们将使用指示器随机变量,它为概率和期望之间的转换提供了一个便利的方法,给定一个样本空间S和事件A,那么事件A对应的指示器随机变量:

Xa = 1 如果A发生

0 如果A没有发生

E[Xa] = Pr{A}

1.指示器随机变量将所求的随机变量X分解成了许多单个的事件,对于每一个事件一一的求期望,加起来即可。

2.注意随机变量指示器怎么用,实际上就是将求一个随机变量的期望,分解到一个个具体的事件,每一个小事件的期望往往容易求,所有小事件的期望加起来就是总得期望。其实是从另一个角度看问题。

转载于dianlu7964的算法导论5.2 指示器随机变量

下面我通过列举题目通过运用这种方法来更快理解

Bubble Sort - 洛谷

给定n,求所有[1,n]排列中逆序对个数的平均值,以分数形式输出。

还可以转化题意为期望逆序对个数是多少?

单个事件就是单独一个对是逆序对

那么总共有几个呢,应该是

Game on Tree - 洛谷

给定一棵有根树,结点编号从 11 到 nn。根结点为 11 号结点。

对于每一次操作,等概率的选择一个尚未被删去的结点并将它及其子树全部删去。当所有结点被删除之后,游戏结束;也就是说,删除 11 号结点后游戏即结束。

要求求出删除所有结点的期望操作次数。

单个事件选择i节点可以直接删除树,因为选了祖先节点就不会选i节点了,因此我们选i节点要比祖先节点先选,这个概率是

未完待续

相关推荐
NeDon14 分钟前
[OJ]数据结构:移除链表元素
c语言·数据结构·算法·链表
刃神太酷啦15 分钟前
C++ list 容器全解析:从构造到模拟实现的深度探索----《Hello C++ Wrold!》(16)--(C/C++)
java·c语言·c++·qt·算法·leetcode·list
承渊政道16 分钟前
一文彻底搞清楚链表算法实战大揭秘和双向链表实现
c语言·数据结构·算法·leetcode·链表·visual studio
sali-tec22 分钟前
C# 基于halcon的视觉工作流-章69 深度学习-异常值检测
开发语言·图像处理·算法·计算机视觉·c#
努力写代码的熊大43 分钟前
手撕AVL树:从理论到实践,掌握插入操作的完美平衡
算法
wbs_scy1 小时前
C++:二叉搜索树(BST)完全指南(从概念原理、核心操作到底层实现)
数据结构·算法
东华万里1 小时前
Release 版本禁用 assert:NDEBUG 的底层逻辑与效率优化
java·jvm·算法
liulilittle1 小时前
C++ CRTP 替代虚函数
数据结构·c++·算法
电摇小人1 小时前
莫比乌斯反演详细解说来啦!!!
数据结构·算法