階乘
/ fak-TOR-ee-ul /
5 個人排成一排拍照有幾種排法?第一個位置有 5 人可選,下一個 4 人,再來 3、2、1——所以 5 乘 4 乘 3 乘 2 乘 1 = 120。這種「從某個數一路乘到 1」的乘積出現得太頻繁,於是有了自己的符號:n!,唸作「n 階乘」。它的核心意義就是把 n 個不同的東西排成一列的方法數。
依定義,n! = n 乘 (n-1) 乘 (n-2) 乘……乘 2 乘 1。所以 1! = 1,2! = 2,3! = 6,4! = 24,5! = 120,而成長極為猛烈——10! 已經是 3628800,20! 超過兩百萬兆。有一個值得牢記的慣例:0! = 1。這不是花招;把零個東西排列恰好「只有一種」方式(空的排法),而設定 0! = 1 能讓排列與組合的公式在不分特例的情況下照常成立。一個乾淨的遞迴看法是 n! = n 乘 (n-1)!,每次剝掉一個因子。
階乘是整個計數工具箱的骨幹:排列 P(n,k) = n!/(n-k)!、組合 C(n,k) = n!/(k!(n-k)!)、以及各種多項式係數全都建立在階乘上。兩個誠實的提醒:階乘成長太快,所以計算比值時要用約分而非逐項計算(例如 100!/98! = 100 乘 99,絕不要算出整個 100!),而且 n! 只對非負整數有定義——要推廣到其他數需要 Gamma 函數,那是另一個觀念。
一副 52 張不同的牌可以洗成 52! 種順序——一個 68 位數,遠遠超過地球上原子的數目。要算 10 位賓客中安排 7 位入座有幾種方式,用 10!/3! = 10 乘 9 乘……乘 4 = 604800,靠約分計算,而非分別算出 10! 和 3!。
n! 計算 n 個不同東西的排序數;依慣例 0! = 1。
0! = 1 並非任意規定——把「沒有東西」排列恰好只有一種方式,而這個值能讓排列與組合公式在邊界情形仍然成立。