因为这个新型冠状病毒,我一直宅在家,可还是算不上“宅码农”。实在没心情敲代码,一心看电影玩游戏去了。
要适当活络活络下脑子,今天温习一下数学里的组合与排列的概念及公式。
这个内容,在之前这篇讲过:10个人玩炸金花,你一夜能输多少钱,所以今天只是再温习一遍,同时将内容单独粘贴为一篇文章,方便查阅。
首先了解一下简单概念:
全排列:n个球中拿出m个球来按顺序排列的种数,所以是讲究顺序的。我们常常简单叫做排列。
组合:与排列相比,不讲究顺序,从n个球中挑出m个球组合的种数,不用排列。
先推导出全排列的公式:
n个球,依次全部拿出来,第一次有n种选择,第二次有n-1种选择,如此到最后就只有1种选择了。
整个排列的种数Sum = n*(n-1)*(n-1)*...*3*2*1 = n!, 术语叫n的阶乘。
全排列公式: An = n!
公式不太好写,网上有图,就不重复了。
我列的An公式是相当于n个球全部拿出来进行排列的。
图里的公式是n个球中选出m个球,公式的推导,主要记住(n-m+1)这个边界值。
边界值记忆诀窍:挑出m个球的最后一个时,就代表从n个球里已经挑出了m-1个,所以原本的n个球已经变为剩下的n-(m-1)个了,即挑出的最后一个球有n-m+1种可能
另外,从上面组合公式可以看出, 就是n中挑出m个的全排列结果再除以m个元素的全排列。
组合公式就是n中挑出m个的全排列结果再除以m个元素的全排列结果。
顺便举个简单例子,辅助理解一下:
从3个球A、B、C中挑出两个球,讲究顺序的话, 会有如下结果:
A B
A C
B C
B A
C A
C B
其中AB和BA排列是属于同一种组合的,也就是说相对于组合来讲,每种组合的结果都有重复,而重复的个数(包含本身)即是两个个元素的排列种数,也就是上面推导出的2的阶乘。
所以组合结果(看上图的公式,n=3,m=2)就是 3里挑2的排列数(6个),再除以2的阶乘(2个),相当于每种组合只保留一条数据,结果就是3了。
由公式推导,从4个球里选出2个来组合的可能性,则有(4*3*(4-3+1))/(2*1) = 12种。
不信你就像上面一样用列举法试试看吧。
本篇为翟码农的个人博客数学逻辑分类下的原创文章,转载请注明出处:http://www.zhai14.com/blog/summary-of-combination-and-arrangement.html