1. 程式人生 > >程序員的數學--排列組合(2)

程序員的數學--排列組合(2)

cab 進行 abc 部分 思考 所有 這一 組合 假設

排列

在上一節中,我們羅列了n個事物的所有排法,那麽在這一節中我們將從n個事物中取出一部分進行排列

思考題:從5張牌中取出3張進行排列

經過思考,我們可以得出一共有60種方法。

我們像上題種那樣從5張裏面取出3張為排列。

需要註意的是,排列與置換相同,也是要考慮順序的,也就是說ABC和CAB是不同的兩個排列。

從5張牌中抽取3張,第一張的取法有5種,

         第二張的取法有4種,

         第三張的取法有3張,

由此可得,5X4X3 = 60

組合

置換和排列都是要考慮順序的,而組合是不需要考慮順序的。

假設現在有A,B,C,D,E五張牌。那麽從這5張牌種選取3張,並且不考慮順序。

經過思考我們得知,一共有10種方法。

首先我們需要和排列一樣計算考慮順序的情況下,進行計數。

然後除以重復的部分(重復度)即可

而這裏的重復度是由置換來決定的。

那麽我們就可以探究一下置換,排列和組合之間的關系:  組合 = 排列/置換

程序員的數學--排列組合(2)