什麼是排列組合計算機?
這個工具能計算從 n 個相異項目中,挑出 r 個並加以排列或選取的方法數。所謂排列(Permutation)會考慮先後順序,組合(Combination)則不在乎順序。這兩個概念是機率、統計與組合數學的基礎。
使用方法
輸入項目總數 n 與要挑選的數量 r(須滿足 \(r \le n\)),計算機就會同時回傳 \(P(n, r)\) 與 \(C(n, r)\)。舉例來說,從 5 個人當中選出 3 人組成委員會屬於「組合」;若要在 5 位參賽者中頒發 3 個有名次之分的獎項,則是「排列」。
公式解析
排列公式為 $$P(n, r) = \frac{n!}{(n - r)!}$$用來計算順序有差別的排列方式。組合公式為 $$C(n, r) = \frac{n!}{r!\,(n - r)!}$$等於把所選群組可重新排序的 \(r!\) 種方式除掉。由於組合忽略順序,因此 \(C(n, r)\) 永遠小於或等於 \(P(n, r)\)。
實例演算
設 \(n = 5\)、\(r = 3\)。則 $$P(5, 3) = 5 \times 4 \times 3 = 60$$種有順序的排列。再除以 \(3! = 6\),得到 $$C(5, 3) = \frac{60}{6} = 10$$種不分順序的選取方式。換句話說,要在 5 名跑者中頒發金、銀、銅牌共有 60 種方式;但若只是從中挑 3 人組隊,則只有 10 種方式。
常見問題
如果 r 大於 n 會怎樣?你無法挑出比現有數量還多的項目,因此兩個結果都會是 0。
0! 等於多少?依定義 \(0! = 1\),所以 \(C(n, 0) = 1\)、\(P(n, 0) = 1\)。
為什麼數值太大時會失準?階乘的成長速度極快,超過約 15 位有效數字後,結果便是浮點數的近似值。