概率论与数理统计--排列组合(一)

2023-11-17

排列:从n个不同元素中,任取m(m≤n,m与n均为自然数,下同)个元素按照一定的顺序排成一列,叫做从n个不同元素中取出m个元素的一个排列;从n个不同元素中取出m(m≤n)个元素的所有排列的个数,叫做从n个不同元素中取出m个元素的排列数,用符号 A(n,m)表示。

计算公式:

  

此外规定0!=1(n!表示n(n-1)(n-2)...1,也就是6!=6x5x4x3x2x1 [1] 

组合的定义:从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个不同元素中取出m个元素的一个组合;从n个不同元素中取出m(m≤n)个元素的所有组合的个数,叫做从n个不同元素中取出m个元素的组合数。用符号 C(n,m) 表示。

计算公式:

  

;C(n,m)=C(n,n-m)。(n≥m)

其他排列与组合公式 从n个元素中取出m个元素的循环排列数=A(n,m)/m=n!/m(n-m)!. n个元素被分成k类,每类的个数分别是n1,n2,...nk这n个元素的全排列数为 n!/(n1!×n2!×...×nk!). k类元素,每类的个数无限,从中取出m个元素的组合数为C(m+k-1,m)。

基本计数原理

⑴加法原理和分类计数法

⒈加法原理:做一件事,完成它可以有n类办法,在

组合恒等式

组合恒等式(2张)

 第一类办法中有m1种不同的方法,在第二类办法中有m2种不同的方法,……,在第n类办法中有mn种不同的方法,那么完成这件事共有N=m1+m2+m3+…+mn种不同方法。

⒉第一类办法的方法属于集合A1,第二类办法的方法属于集合A2,……,第n类办法的方法属于集合An,那么完成这件事的方法属于集合A1UA2U…UAn。

⒊分类的要求 :每一类中的每一种方法都可以独立地完成此任务;两类不同办法中的具体方法,互不相同(即分类不重);完成此任务的任何一种方法,都属于某一类(即分类不漏)。

⑵乘法原理和分步计数法

⒈ 乘法原理:做一件事,完成它需要分成n个步骤,做第一步有m1种不同的方法,做第二步有m2种不同的方法,……,做第n步有mn种不同的方法,那么完成这件事共有N=m1×m2×m3×…×mn种不同的方法。

⒉合理分步的要求

任何一步的一种方法都不能完成此任务,必须且只须连续完成这n步才能完成此任务;各步计数相互独立;只要有一步中所采取的方法不同,则对应的完成此事的方法也不同。

3.与后来的离散型随机变量也有密切相关。

二项式定理

. [3] 

通项公式:a_(i+1)=C(in)a^(n-i)b^i

二项式系数:C(in)杨辉三角:右图。两端是1,除1外的每个数是肩上两数之和。

系数性质:

⑴和首末两端等距离的系数相等;

⑵当二项式指数n是奇数时,中间两项最大且相等;

⑶当二项式指数n是偶数时,中间一项最大;

⑷二项式展开式中奇数项和偶数项总和相同,都是2^(n-1);

⑸二项式展开式中所有系数总和是2^n

组合数的奇偶

奇偶定义:对组合数C(n,k)(n>=k):将n,k分别化为二进制,若某二进制位对应的n为0,而k为1 ,则C(n,k)为偶数;否则为奇数。

下面是判定方法:

结论:

对于C(n,k),若n&k == k 则c(n,k)为奇数,否则为偶数。

证明:

对于C(n,k),若n&k == k 则c(n,k)为奇数,否则为偶数。

证明:

利用数学归纳法

由C(n,k) = C(n-1,k) + C(n-1,k-1);

对应于杨辉三角

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

………………

可以验证前面几层及k = 0时满足结论,下面证明在C(n-1,k)和C(n-1,k-1) (k > 0) 满足结论的情况下,

C(n,k)满足结论。

1).假设C(n-1,k)和C(n-1,k-1)为奇数:

则有:(n-1)&k == k;

(n-1)&(k-1) == k-1;

由于k和k-1的最后一位(在这里的位指的是二进制的位,下同)必然是不同的,所以n-1的最后一位必然是1

现假设n&k == k。

则同样因为n-1和n的最后一位不同推出k的最后一位是1。

因为n-1的最后一位是1,则n的最后一位是0,所以n&k != k,与假设矛盾。

所以得n&k != k。

2).假设C(n-1,k)和C(n-1,k-1)为偶数:

则有:(n-1)&k != k;

(n-1)&(k-1) != k-1;

现假设n&k == k.

则对于k最后一位为1的情况:

此时n最后一位也为1,所以有(n-1)&(k-1) == k-1,与假设矛盾。

而对于k最后一位为0的情况:

则k的末尾必有一部分形如:10; 代表任意个0。

相应的,n对应的部分为:1{*}*; *代表0或1。

而若n对应的{*}*中只要有一个为1,则(n-1)&k == k成立,所以n对应部分也应该是10。

则相应的,k-1和n-1的末尾部分均为01,所以(n-1)&(k-1) == k-1 成立,与假设矛盾。

所以得n&k != k。

由1)和2)得出当C(n,k)是偶数时,n&k != k。

3).假设C(n-1,k)为奇数而C(n-1,k-1)为偶数:

则有:(n-1)&k == k;

(n-1)&(k-1) != k-1;

显然,k的最后一位只能是0,否则由(n-1)&k == k即可推出(n-1)&(k-1) == k-1。

所以k的末尾必有一部分形如:10;

相应的,n-1的对应部分为:1{*}*;

相应的,k-1的对应部分为:01;

则若要使得(n-1)&(k-1) != k-1 则要求n-1对应的{*}*中至少有一个是0.

所以n的对应部分也就为 :1{*}*; (不会因为进位变1为0)

所以 n&k = k。

4).假设C(n-1,k)为偶数而C(n-1,k-1)为奇数:

则有:(n-1)&k != k;

(n-1)&(k-1) == k-1;

分两种情况:

当k-1的最后一位为0时:

则k-1的末尾必有一部分形如:10;

相应的,k的对应部分为 : 11;

相应的,n-1的对应部分为 : 1{*}0; (若为1{*}1,则(n-1)&k == k)

相应的,n的对应部分为 : 1{*}1;

所以n&k = k。

当k-1的最后一位为1时:

则k-1的末尾必有一部分形如:01; (前面的0可以是附加上去的)

相应的,k的对应部分为 : 10;

相应的,n-1的对应部分为 : 01; (若为11,则(n-1)&k == k)

相应的,n的对应部分为 : 10;

所以n&k = k。

由3),4)得出当C(n,k)为奇数时,n&k = k。

综上,结论得证。

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

概率论与数理统计--排列组合(一) 的相关文章

随机推荐

  • Spring学习笔记2:注解开发、AOP思想、整合Mybatis、事务

    文章目录 7 使用注解开发 7 1 属性如何注入 1 Component 2 Value 7 2 衍生的注解 7 3 自动装配 7 4 作用域 1 Scope singleton 7 5 小结 9 使用java的方式配置Spring 9 1
  • flink连接kafka报:org.apache.kafka.common.errors.TimeoutException: Timeout expired while fetching topic

    报错信息 Caused by org apache flink runtime JobException Recovery is suppressed by NoRestartBackoffTimeStrategy at org apach
  • 跑通SOLOV1-V2实例分割代码,并训练自己的数据集。

    系统平台 Ubuntu18 04 硬件平台 RTX2080 super cuda和cudnn版本 cuda10 0 cudnn 7 5 6 pytorch版本 pytorch1 2 0 环境安装 创建solo虚拟环境 conda creat
  • 图(一)之邻接表Adjacency List

    开始攻克图的算法 先从最简单的存储开始实现 本文关于邻接表的实现 邻接表是图的存储中最简单也是最基本的存储结构 基于链表的思想实现的 在邻接表中 对于中的每个顶点建立一个单链表 第i个单链表中的节点表示依附于顶点的vi的边 每个节点由3个域
  • Android进阶之光:Dagger2原理简要分析

    Dagger2注入框架原理简要分析 使用Dagger2需要的依赖 implementation com google dagger dagger android 2 46 implementation com google dagger d
  • 实训九 网络服务的基本配置

    实训九 网络服务的基本配置 2017 年 4 月 16 日 今日公布 实训目标 完成本次实训 将能够 配置网卡 配置xinetd超级服务器 实训准备 两台计算机 其中一台安装RHEL6系统 该系统出来root账号外 至少还有一个普通账号 另
  • 【Linux系统编程】静态库和共享库

    个人博客 https blog csdn net Newin2020 spm 1011 2415 3001 5343 专栏地址 Linux系统编程 专栏定位 整理一下 C 相关的知识点 供大家学习参考 如果有收获的话 欢迎点赞 收藏 您的支
  • YOLOv5小目标检测(方法与评价)

    问题 当我们在对小目标数据集进行检测时 发现无论如何都有一些漏检的 其中我们也添加一些模块 以及其他的一些改进方法 如注意力 激活函数等等 结果始终不会令人满意 map也没有丝毫的提升 目的 增加对小目标的检测能力 不能产生漏检 自述 许多
  • ARM芯片学习(S5PV210开发)——GPIO控制LED

    1 GPIO介绍 GPIO general purpose input output 通用输入输出 GPIO就是芯片的引脚 是比较特殊的引脚 可以通过代码来操作 控制引脚的高低电平以及工作模式 与GPIO相对的就是固定功能的引脚 我们不能通
  • FPGA笔记8——串口通信(回环实验)

    目录 串口通信原理 串行通信基础知识 处理器与外部设备通信的两种方式 串行通信的通信方式 串行通信的传输方向 常见的串行通信接口 异步串口通信UART基础知识 数据格式 传输速率 接口标准 RS232接口 串口通信实验RS 232 实验任务
  • LeetCode-斐波那契数列

    class Solution public int Fibonacci int n if n 0 return 0 if n 1 return 1 return Fibonacci n 1 Fibonacci n 2 int a 0 b 1
  • 1 RocketMQ简介

    简介 RocketMQ是由阿里捐赠给Apache的一款低延迟 高并发 高可用 高可靠的分布式消息中间件 经历了淘宝双十一的洗礼 RocketMQ既可为分布式应用系统提供异步解耦和削峰填谷的能力 同时也具备互联网应用所需的海量消息堆积 高吞吐
  • 深入解决Linux内存管理之page fault处理

    说明 Kernel版本 4 14 ARM64处理器 Contex A53 双核 使用工具 Source Insight 3 5 Visio 1 概述 内核实现只是在进程的地址空间建立好了vma区域 并没有实际的虚拟地址到物理地址的映射操作
  • 《学会提问》-批判性思维

    这本书名为学会提问 但实际内容是讲解如何训练批判性思维能力 如何通过提问 来质疑别人的观点 选择正确的论证 来形成自己的理性决策 批判性思维的最终结果就是要求一个人虚怀若谷地接纳各种观点 理性评判这些观点 然后在理性判断的基础上决定采取哪些
  • 如何使用python调用电脑麦克录音

    import wave import pyaudio 定义数据流块 CHUNK 1024 FORMAT pyaudio paInt16 CHANNELS 2 RATE 44100 录音时间 RECORD SECONDS 5 要写入的文件名
  • 华为OD机试 C++ 回文字符串

    题目 什么是 回文串 就是一个字符串正着读和反着读都一样 而且要注意大小写的区别 例如 leVel 是一个回文串 因为正着反着都一样 art 就不是 反过来就变成 tra 了 Level 也不是 因为大小写不同 现在 你要做的就是用给定的一
  • NOIP中的数学--第6课 计数原理 (上)

    加法原理与乘法原理 1 加法原理 完成一个工程可以有n类办法 ai代表第i类方法的数目 那么完成这件事共有 S a 1 a 2 a n 种不同的方法 2 乘法原理 完成一个工程需要分n个步骤 ai 代表第i个步骤的不同方法数目 那么完成这件
  • python3 通过 pybind11 使用Eigen加速

    python是很容易上手的编程语言 但是有些时候使用python编写的程序并不能保证其运行速度 例如 while 和 for 这个时候我们就需要借助c 等为我们的代码提速 下面是我使用pybind11调用c 的Eigen库的简单介绍 第一步
  • 实现页面失去焦点十秒后强制执行js

    页面失去焦点后开始倒计时 时间到了执行指定js 适用于 检测页面无操作退出登录 在线答题防止切换页面搜索答案 浏览页面多久后获取奖励等场景
  • 概率论与数理统计--排列组合(一)

    排列 从n个不同元素中 任取m m n m与n均为自然数 下同 个元素按照一定的顺序排成一列 叫做从n个不同元素中取出m个元素的一个排列 从n个不同元素中取出m m n 个元素的所有排列的个数 叫做从n个不同元素中取出m个元素的排列数 用符