错位排列

来源:互联网 发布:c语言物业费管理系统 编辑:程序博客网 时间:2024/04/24 17:26

错位排列是指:n个对象排队,每个人都不在他们原来的位置上,这样的排列有多少种?
我们假设有ABCDE 5个对象,则让A先排,可以有BCDE 4个位置。假设A占了B的位置,下面可以分两种情况:
(1) B也占了A的位置。这时剩下的3个刚好是大小为3的错位排列问题。
(2) B 不占A的位置。此时的问题形式为

A B C D E A

因为B的位置被占了,不会影响后面的选择,可以去掉,又因为A的位置B不能占,所以我们把A的位置,换成B,形式如下:

B C D E

就变成了大小为4的错位排列问题。
所以f(5)=4(f(3)+f(4)).
系数4是指A可以选择BCDE 4个位置。

假设f(n)表示大小为n的错位排列问题的排列数。则有
f(n)=(n1)(f(n2)+f(n1))
其中f(1)=0,f(2)=1.

原创粉丝点击