排列组合
引入
排列组合是组合数学中的基础。排列就是指从给定个数的元素中取出指定个数的元素进行排序;组合则是指从给定个数的元素中仅仅取出指定个数的元素,不考虑排序。排列组合的中心问题是研究给定要求的排列和组合可能出现的情况总数。排列组合与古典概率论关系密切。
在高中初等数学中,排列组合多是利用列表、枚举等方法解题。
加法 & 乘法原理
加法原理
完成一个工程可以有
乘法原理
完成一个工程需要分
排列与组合基础
排列数
从
排列的计算公式如下:
公式可以这样理解:
全排列:
全排列是排列数的一个特殊情况。
组合数
从
组合数计算公式
如何理解上述公式?我们考虑
组合数也常用
组合数也被称为「二项式系数」,下文二项式定理将会阐述其中的联系。
特别地,规定当
插板法
插板法(Stars and bars)是用于求一类给相同元素分组的方案数的一种技巧,也可以用于求一类线性不定方程的解的组数。
正整数和的数目
问题一:现有
考虑拿
因为元素是完全相同的,所以答案就是
本质是求
非负整数和的数目
问题二:如果问题变化一下,每组允许为空呢?
显然此时没法直接插板了,因为有可能出现很多块板子插到一个空里面的情况,非常不好计算。
我们考虑创造条件转化成有限制的问题一,先借
虽然不是直接求的原问题,但这个式子就是原问题的答案,可以这么理解:
开头我们借来了
由此可以推导出插板法的公式:
本质是求
不同下界整数和的数目
问题三:如果再扩展一步,要求对于第
本质是求
类比无限制的情况,我们借
得到新方程:
其中
然后问题三就转化成了问题二,直接用插板法公式得到答案为
不相邻的排列
二项式定理
在进入排列组合进阶篇之前,我们先介绍一个与组合数密切相关的定理——二项式定理。
二项式定理阐明了一个展开式的系数:
证明可以采用数学归纳法,利用
二项式定理也可以很容易扩展为多项式的形式:
设
其中的
排列与组合进阶篇
接下来我们介绍一些排列组合的变种。
多重集的排列数 | 多重组合数
请大家一定要区分 多重组合数 与 多重集的组合数!两者是完全不同的概念!
多重集是指包含重复元素的广义集合。设
相当于把相同元素的排列数除掉了。具体地,你可以认为你有
可以看出,
多重集的组合数 1
设
多重集的组合数 2
考虑这个问题:设
这样就限制了每种元素的取的个数。同样的,我们可以把这个问题转化为带限制的线性方程求解:
于是很自然地想到了容斥原理。容斥的模型如下:
- 全集:
的非负整数解。 - 属性:
。
于是设满足属性
根据容斥原理,有:
拿全集
其中 A 是充当枚举子集的作用,满足
圆排列
由此可知部分圆排列的公式:
组合数性质 | 二项式推论
由于组合数在 OI 中十分重要,因此在此介绍一些组合数的性质。
相当于将选出的集合对全集取补集,故数值不变。(对称性)
由定义导出的递推式。
组合数的递推式(杨辉三角的公式表达)。我们可以利用这个式子,在
这是二项式定理的特殊情况。取
二项式定理的另一种特殊情况,可取
拆组合数的式子,在处理某些数据结构题时会用到。被称为 范德蒙恒等式。
这是
带权和的一个式子,通过对
与上式类似,可以通过对多项式函数求导证明。
通过组合分析一一考虑
通过定义可以证明。
其中
通过
二项式反演
记
若已知
若已知
上述已知
证明
将反演公式的
先枚举
使用 「组合数性质 | 二项式推论」 的公式 (11) 得到:
令
使用 「组合数性质 | 二项式推论」 的公式 (5) 得到:
证毕。
本页面最近更新:2024/10/13 15:11:31,更新历史
发现错误?想一起完善? 在 GitHub 上编辑此页!
本页面贡献者:CCXXXI, Chrogeek, cjsoft, Early0v0, Enonya, Enter-tainer, FFjet, Great-designer, iamtwz, IceySakura, Ir1d, Marcythm, MegaOwIer, Menci, opsiff, renbaoshuo, sshwy, StudyingFather, Tiger3018, Tiphereth-A, untitledunrevised, wq-yang, Xeonacid, Xiaobin Ren, Yukimaikoriya, Zhoier, ZXyaang, zyzzyh
本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用