排列组合详解

Posted 白简的博客~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排列组合详解相关的知识,希望对你有一定的参考价值。

一、引入

排列组合是组合数学的基础,主要是研究各种排列和组合的情况数。

1. 加法原理

在同一步中,有不同类别的选择,可以将各类选择方案数累加获得总方案数。

举例说明,比如从 \\(A\\) 城到达 \\(B\\) 城,坐火车有 \\(3\\) 种方案,坐飞机有 \\(2\\) 种方案。则总共有 \\(2 + 3 = 5\\) 种方案。

2. 乘法原理

在不同步骤中,有不同种方案,可以将各步方案数累乘获得总方案数。

举例说明,比如从 \\(A\\) 城到达 \\(B\\) 城,中间需要从 \\(C\\) 城转乘。到达 \\(C\\) 城有 \\(3\\) 种方案,到达 \\(B\\) 城有 \\(2\\) 种方案。则总共有 \\(2 \\times 3 = 6\\) 种方案。

二、公式

排列数:从 \\(n\\) 个不同元素中任意选出 \\(m(m \\leq n)\\) 个,按照一定顺序排成一列,叫做从 \\(n\\) 个不同元素中取出 \\(m\\) 个元素的排列数。

\\[A^m_n = n(n-1)(n-2) \\cdots (n-m+1)=\\fracn!(n-m)! \\]

组合数:从 \\(n\\) 个不同元素中任意选出 \\(m(m \\leq n)\\) 个的所有组合的个数,叫做从 \\(n\\) 个不同元素中取出 \\(m\\) 个元素的组合数。

\\[C^m_n = \\fracA^n_mA^m_m = \\fracn!m!(n-m)! \\]

三、经典题型

1. 特殊元素和位置优先

\\(1\\)

\\(0,1,2,3,4,5\\) 可以组成多少个没有重复数字的五位奇数?

解答

对于末位和首位有特殊要求,应该优先安排,以免不合要求的元素把这两个位置占掉。

先排末位共有 \\(C^1_3\\),然后排首位共有 \\(C_4^1\\),最后排其它位置共有 \\(A_4^3\\)

由计数原理可以算出 \\(ans=C^1_3 C_4^1 A_4^3\\)

练习 \\(1\\)

\\(0\\)\\(9\\)\\(10\\) 个数字,可以组成多少个没有重复数字的三位偶数?

解析

2. 相邻元素捆绑

有些元素不能分开,于是可以将这几个元素看作一个整体元素来进行排列组合。

\\(2\\)

\\(7\\) 人站成一排 ,其中甲乙相邻且丙丁相邻, 共有多少种不同的排法?

解答:
甲乙相邻,丙丁相邻,看作两个整体元素。

甲乙内部 \\(A^2_2\\) 种方案,丙丁内部 \\(A^2_2\\) 种方案,这两个整体元素和其他剩余 \\(5\\) 个元素进行排列,有 \\(A^5_5\\) 种方案。

则答案为 \\(ans = A^2_2A^2_2A^5_5\\)

练习 \\(2\\)

记者要为 \\(5\\) 名志愿者和他们帮助的 \\(2\\) 位老人拍照,要求排成一排,\\(2\\) 位老人相邻但不排在两端,求不同排法的数量?

解析

3. 不相邻元素插空

有些元素要求不能放在一起,我们可以将其他元素先排列好,再将这些不能放在一起的元素插在已经排好元素的空位中。

\\(3\\)

一个晚会的节目有 \\(4\\) 个舞蹈,\\(2\\) 个相声,\\(3\\) 个独唱,舞蹈节目不能连续出场,则节目的出场顺序有多少种?

解答:
第一步,先把 \\(2\\) 个相声和 \\(3\\) 个独唱排列好,共 \\(A^5_5\\) 种方案;

第二步,将这四个舞蹈插入 \\(6\\) 个空之中,共 \\(A^4_6\\) 种方案。

则答案为 \\(ans = A^5_5A^4_6\\)

练习 \\(3\\)

道路边上有编号 \\(1\\)\\(10\\)\\(10\\) 盏路灯,现要关掉其中的 \\(3\\) 盏,但不能关掉相邻的 \\(2\\) 盏或 \\(3\\) 盏,也不能关掉两端的路灯,则满足要求的关灯方法有几种?

解析

4. 定序问题倍缩空位插入

倍缩法:对于某几个元素顺序一定的排列问题,可先把这几个元素与其他元素一起进行排列,然后用总排列数除以这几个元素之间的全排列数。

\\(4\\)

\\(7\\) 人排队,其中甲乙丙 \\(3\\) 人顺序一定,共有多少不同的排法?

解答:

先把这几个需要固定顺序的元素和其他元素一同进行排列,即 \\(A^7_7\\) 种;

然后再除以这几个元素的全排列数,即 \\(A^3_3\\) 种;

答案即为

\\[ans = \\fracA^7_7A^3_3 \\]

练习 \\(4\\)

信号兵把红旗和白旗从上到下挂在旗杆上表示信号。现有 \\(3\\) 面红旗,\\(2\\) 面白旗,把这 \\(5\\) 面旗都挂上去,总共能表示多少种信号?

解析

练习题

P3223 [HNOI2012]排队

主要是插空法 + 高精度

以上是关于排列组合详解的主要内容,如果未能解决你的问题,请参考以下文章

机器学习基础知识之概率论基础详解

机器学习基础知识之概率论基础详解

用DFS 解决全排列问题的思想详解

Mysql笛卡尔积详解(附实现多表查询代码实现)

php实现全组合算法

ios SKU 组合算法