这部分主要学习概率分析。在概率论的教程里面其实已经学过这些了…

附录C的第一部分是排列组合的基础知识;第二部分是经典概率论;第三部分是离散随机分布的一些概念(期望、方差);第四部分介绍了两个常见的离散分布:几何分布和二项分布;最后一部分是可选内容,介绍了二项分布的尾相关的上下界。

第五章主要介绍了随机算法的写法,特别强调了均匀随机的概念,引入随机变量指示器作为一个计算期望的技巧。

内容小结:

计数:略

概率:贝叶斯公式: \[Pr\{A | B\}=\dfrac{Pr\{A\}Pr\{B|A\}}{Pr\{B\}}\]

    全概率公式:Pr{B}=Pr{B|A1}+Pr{B|A2}+...+Pr{B|An},其中Pr{A1}+...+Pr{An}=1

离散随机变量:期望与方差的公式

常见分布:几何分布,E[x]=1/p,D[x]=$q/p^2$

      二项分布,E[x]=np,D[x]=npq

随机算法:其一是随机生成优先级,然后再优先级唯一的情况下据其对数组进行重排;

     其二是原地与其后(含自身)进行随机交换。

Exercises:

5.1-1 第4行确定了比较的可行性

5.1-2 Random(a,b)

    return a+(b-a)*Random(0,1)

5.1-3 如果调用两次,那么至少返回01和10的概率都是p(1-p),利用这一点,可以这么写:

    Random

    x ← BIASED_RANDOM

    y ← BIASED_RANDOM

    if x≠y then

      return x

5.2-1 1/n,1/n!

5.2-2 1/n

5.2-3 令$X_i$为第i次出现的骰子的点数,则总数是$\sum_{i=1}^nX_i$,期望就是$\sum_{i=1}^nEX_i$=3.5n

5.2-4 令事件$X_i$表示第i位客户拿回自己的帽子,指示器随机变量为I($X_i$),则拿回帽子的总人数为$\sum_{i=0}^nI(X_i)$,而Pr{$X_i$}显然为1/n,所以最后的期望数为1。

5.2-5 挑选序列中任意一组数据A[i],A[j](j>i),两者构成逆序对的概率是1/2,令$X_{ij}$表示事件“$A_i$与$A_j$构成逆序对,那么总的逆序对期望数目应当是

\[ E \left( \sum_{i=1}^{n-1}\sum_{j=i+1}^n X_{ij} \right) = n(n-1)/4 \]

5.3-1 Randomize_In_Place'(A)

    n ← length[A]

    swap A[1]↔Random[1,n]

    for i ← 2 to n

     do swap A[i]↔Random[i,n]

换言之,将初始条件独立出来就不会陷入题设的(莫名其妙的)窘境。

5.3-2 这段代码不能实现产生非同一排列的任意排列的产生,而只能生成所有A[i]与原序列不同的序列。缺失了A[i]部分不同的那一部分。

5.3-3 不会,可以举例证明。

5.3-4 代码构成了一个循环交换,可选位置是n个,概率显然是1/n。问题是B[dest]可能多次指向同一位置,这样序列的数目根本就不对,更别说是不是均匀随机序列了。

5.3-5 所有元素都唯一的概率应该是\[ Pr\{A\}= \dfrac{n^3 * (n^3-1) * \cdots *(n^3-n)}{n^3 * n^3 * \cdots * n^3} \],下略【其实我没算出来= =】

5.3-6 在重新放置的过程中,如果发现优先级对应的位置已经有元素(可用辅助数组或者直接将B初始化为A中不可能存在的数值),就重新调用随机数生成函数,直至不再重复。根据概率理论,这个过程应该是收敛的,不会陷入死循环中。

转载于:https://www.cnblogs.com/livewithnorest/archive/2012/08/21/2646551.html

CLRS2e读书笔记—Chapter5 Appendix C相关推荐

  1. RTR4读书笔记 Chapter5 Shading Basics

    5.1 阴影模型(Shading Model) Gooch Model,根据顶点法线与灯光方向的接近程度来计算冷暖色调. 该光照模型不考虑光照的强度与颜色,只使用了光照方向. ±号指Clamp01 r ...

  2. [读书笔记]自控力内容整理

    <自控力>其实是在今年(2016)年初读完的,今天整理之前的读书笔记,读了几遍觉得好多内容都很实用,简单整理了下.这本书对我的影响很大,它让我戒掉了3年多的熬夜的习惯,很难想象我可以在关灯 ...

  3. [转]《Python编程金典》读书笔记

    <Python编程金典>读书笔记 原文: http://man.chinaunix.net/develop/python/python_howto/python_howto_program ...

  4. 《Python编程金典》读书笔记

    << Back to man.ChinaUnix.net <Python编程金典>读书笔记 整理:Jims of 肥肥世家 <yjnet@21cn.com> 第一次 ...

  5. .NET Book Zero 读书笔记(三)(从C++的使用者角度学习C#)

    Interfaces Interface看起来像是Class或者Struct,但是里面的method都没有body,比如: // Interfaces are entirely overhead! T ...

  6. 《Introduction To Modern Cryptography》读书笔记二

    <Introduction To Modern Cryptography>读书笔记二 本笔记纯粹个人读书习惯与相应见解,内容归纳完全出于个人需要与个人局限,如有修改意见(比如哪儿应该是值得 ...

  7. [ZT]640-801中文读书笔记

    [原创]640-801中文读书笔记 作者:红头发 03-22-2004                               打包下载 Noko#sh run ! Written by 红头发 ...

  8. 现代机器人(Modern Robotics):力学,规划,控制读书笔记

    现代机器人:力学,规划,控制读书笔记 在csdn上传主要是可以换积分,文章乱码比较多,有用的话可以来知乎看,目录链接如下,感兴趣可以来看: 现代机器人:力学,规划,控制(chapter1)内容简介 - ...

  9. 【读书笔记】知易行难,多实践

    前言: 其实,我不喜欢看书,只是喜欢找答案,想通过专业的解答来解决我生活的困惑.所以,我听了很多书,也看了很多书,但看完书,没有很多的实践,导致我并不很深入在很多时候. 分享读书笔记: <高效1 ...

最新文章

  1. 如何区分山寨版网管软件
  2. 二十八、layui的日历组件使用
  3. Distributed Systems笔记-Web Service Design Patterns
  4. 牛客题霸 [括号序列] C++题解/答案
  5. Column name pattern can not be NULL or empty.
  6. 大数据面试-03-大数据工程师面试题
  7. 收发一体超声波测距离传感器模块_超声波避障传感器在哪些地方运用
  8. 【map分组求和】map集合根据某一key分组,再对某一key对应的所有值求和
  9. Android 设备上可以实现 3D Touch 吗?| 原力计划
  10. mysql主从数据库不同步的2种解决方法(转)
  11. 戴尔电脑安装win 7
  12. pythonfilelist_Python 列表list使用介绍
  13. IOS之拨打电话的三种方式
  14. Python全栈笔记(六)
  15. 产品经理天马行空,表格组件应对自如
  16. c语言拍皮球100,童话故事——拍皮球
  17. 电瓶车充电桩收费平台解决小区充电难的问题
  18. 用友文件输出在服务器电脑,用友软件电脑怎么远程连接服务器
  19. 你羡慕我国庆能出去旅游,我羡慕你加班3倍工资
  20. 矩阵计算:乘法,哈达玛积,克罗内克积 ,方阵的部分性质

热门文章

  1. 安装IE8不能调试VS2005的解决办法
  2. python函数文档说明调用方式_Python 跨.py文件调用自定义函数说明
  3. 神经网络设计神经网络
  4. EMC virtual provisining and fast vp
  5. UFS和eMMC闪存差异在哪?
  6. 硬件开源需求迫切?开源笔电 Nevona 筹款金额达预设目标3倍
  7. [ASP.NET MVC3.0]Contact Manager 之迭代开发 一
  8. 转:使用 PHP 直接在共享内存中存储数据集
  9. 协议森林06 瑞士军刀 (ICMP协议)
  10. RTX51 tiny系统要注意的问题:(关于时间片)