1. 程式人生 > >徹底搞懂錯排公式

徹底搞懂錯排公式

問題:現有10本書按照順序擺放,現要求重新排列,使得新的書的順序中每一本書都不在原來的位置,求有多少種排列方式?

這個問題推廣一下,就是錯排問題,是組合數學中的問題之一。考慮一個有n個元素的排列,若一個排列中所有的元素都不在自己原來的位置上,那麼這樣的排列就稱為原排列的一個錯排。 n個元素的錯排數記為D(n)。 研究一個排列錯排個數的問題,叫做錯排問題或稱為更列問題

OK,現在詳細分析這個問題,我們要的最終結果就是書的編號與所在位置的編號不同,在這裡,我們把n本書的錯排運算元記為D(n),那n-1本就是D(n-1),n-2本就是D(n-2)啦,下面,我們把放置問題分為兩步(初始位置號與書的編號相同):

第一步:

        我們取一本書,書的編號為m,現在這本書就在我們手中,注意,按照題目要求,最開始的時候這本書的位置號也是m號,按照題目要求,我們現在放書時不能放回這個位置m了,而是要選擇其他位置,那麼有多少種選擇呢,想一下,總共有n本書,n個位置,現在我手裡這本書不能把它放到位置m,那麼剩下的n-1個位置我當然就是隨便扔啦,也就是n-1種扔法,好,現在,我選擇了位置k,我決定把手裡這本書放到位置k這裡,記住這個是位置編號k,那麼,我肯定要把原來這裡的編號為k的書拿出來,再把這本編號為n的書放進去嘍。所以,現在我們手裡的書的編號是k

第二步:

        我們把手裡這本編號為k的書本放到書架,注意,放的過程中我們又面臨兩種情況,可以想到,此時此刻現在書架上編號m的位置是空著的,所以我們可以選擇放在這個位置上,書的編號為k,位置編號為m,沒錯,滿足題意,這是第一種情況,還有一種就是我不選擇這個空著的位置m,我再重新選擇一個新的位置,我們稱之為第二種情況,下面詳細分析

第一種情況:我把這本編號為k的書放到這個編號為m的地址,那現在我們面前是什麼狀況呢,就是位置k和位置m的書交換位置,也就是位置號不等於書號,即滿足錯排,總共n個位置,我們只動了m和k這兩個位置,那麼剩下的n-2個位置還是紋絲不動

,保持一一對應的關係呢,那麼對於剩下的這n-2本書的錯排操作,我們又回到了問題的起點,求n-2本的錯排運算元D(n-2),結合第一步,我們可以得到第一種情況總共有(n-1)*D(n-2)種方法

第二種情況:我們不選擇這個空著的位置m啦,我們手持這本編號為k的書,我們從除了位置m以及位置k的剩下的n-2個位置中選擇一個位置,OK,我們現在開始想,我手裡這本書不能放在這個位置m,嗯嗯,除了第一步我們放置的那本書m不用管了,我們還要搞手裡這本和剩下的n-2本,也就是n-1本,同時又要求手裡這本k還不能放到位置m,這是不是就相當於把手裡這本加上剩下的n-2本也就是n-1本書進行錯排呢,哇哇哇,想一想,錯排的定義,要求每本書都不能呆在某一個特定位置,是不是剛好符合呢qwq,所以,現在的為題就到了求手裡這本和剩下的n-2本總共是n-1本書的錯排運算元,我們記為D(n-1),結合第一步,我們得出這第二種情況共有(n-1)*D(n-1)種方法

好的,現在我們總結兩種情況,結果進行相加,就可以得到遞推公式啦

遞推公式為:\large {\color{Red} D(n)=(n-1)*[D(n-1)+D(n-2)]}