一、背景
在学习统计学知识的时候,排列组合公式往往理解之后就容易忘记,那么如何做到不易忘记呢?下文分享了一种不再忘记排列组合数的方法。
二、排列组合公式是什么呢?
2.1 排列
排列就是从n个不同的对象中取出m个对象,这m个不同对象有n!/((n-m)!)种排列方式。
举个例子,从5个对象中取出2个对象,对这2个对象进行排序,就有为5!/(3!)= 20种排列方式。
2.2 组合
组合就是从n个不同的对象中取出m个对象,有n!/((n-m)!*m!)种组合方式。
举个例子,从5个对象中取出2个对象,有5!/(3!*2!)= 10种组合方式。
三、该如何理解上述公式呢?
除了穷举验证公式的方法,能不能从逻辑上去理解上面的公式呢?下文提供了一种理解公式的思路。
将排列分为两种情况。
3.1 n个不同类别的对象排列
我们都知道计算n个不同类别的对象排位方式是n*(n-1)…1 = n! 如10个数字组成的10位车牌号,且同一个数字只能出现一次。第一位数字有10种填写方式,第二位数字有9种填写方式,依次类推,最终有1098…*1 = 10!种方式。
3.2 n个有相同类别的对象排列
当n个对象包含多个类别且我们不关心同类别之间的排序的话,需要除以该类别对象数的阶乘,对类别数进行归一。
比如1,2,3这三个数字,我们将1,3归于奇数,将2归于偶数。当只关心奇数和偶数的相对位置,不关心1和3的排位的话,分为3种情况。
1)偶数在第一位置,‘2,1,3’和‘2,3,1’归为1类
2)偶数在第二位置,‘1,2,3’和‘3,2,1’归为1类
3)偶数在第三位置,‘1,3,2’和‘3,1,2’归为1类
由于有3个对象,3个对象被分为奇数和偶数这两个类别,而且同一类别对象互换位置不产生新的分类,因此需要在原来3!的基础上去除掉同类对象排列带来的重复排列数量(2!* 1!)。
变成公式就是 3!/ (2! * 1!) = 3种排列方式。
总之,计算n个对象,包含m个类别,且每个类别数为X1+X2+X3+…+Xm = n的排位方式就是n!/ (X1!*X2! …*Xm!)
具体可以看下图。其中排位:5!对应 n个不同类别的对象排列的计算方式。
按颜色类别排位对应n个有相同类别的对象排列的计算方式。
3.3 回到排列公式
排列就是从n个不同的对象中取出m个对象,对这m个不同对象排序有n!/((n-m)!)种排列方式。
n个不同的对象,就是n!,如图中的5!
有5个对象,取出2个对象且对2个对象进行排列,那5个对象就被分为2个需要排列的对象和3个不需要排列的对象。两类对象符合n个有相同类别的对象排列的计算方式。其中2个对象属于2个不同类别数为1的取出类别,3个对象属于1个剩余类别。因此得出有5!/((5-2)!*1!*1!)种排列方式。因为这2个取出对象属于2个类别且1!*1!=1,所以最终得到n!/((n-m)!)种排列方式。
3.5 回到组合公式
组合就是从n个不同的对象中取出m个对象,有n!/((n-m)!*m!)种组合方式。
组合就是从n个不同的对象中取出m个对象,不对这m个对象排序,剩下n-m个对象自动组成一类。m个对象,组成1类,每类m个对象数。
那么就得到了n!/((n-m)!*m!)种组合数。
四、排列和组合的异同
4.1 相同
都是对n个有相同类别的对象排列。分为取出类和剩余类。
4.2 差异点
组合和排列的区别就是取出的对象是否可以被看做一类,或者是否有序。
排列是取出m个对象有序或者不可以被看成1类,那么就是m个1!种排列。
组合是m个对象无序或者可以被看成1类,那么就是m!。