J'ai été assez impressionné par l'élégance de la réponse @whuber. Pour être honnête, j'ai dû beaucoup me familiariser avec de nouveaux concepts pour suivre les étapes de sa solution. Après y avoir passé beaucoup de temps, j'ai décidé de publier ce que j'avais. Ce qui suit est donc une note exégétique à sa réponse déjà acceptée. De cette façon, il n'y a aucune tentative d'originalité, et mon seul objectif est de fournir des points d'ancrage supplémentaires pour suivre certaines des étapes impliquées.
Alors c'est parti ...
2n
2. Peut-on dériver la formule des dérangements?
n
d(n)=(n−1)[d(n−2)+d(n−1)]=
=nd(n−2)−d(n−2)+nd(n−1)−d(n−1)
d(n)−nd(n−1)=−[d(n−1)−(n−1)d(n−2)]
Remarquant maintenant le parallélisme entre le LHS de cette équation et la partie sur le RHS entre parenthèses, nous pouvons continuer récursivement:
d(n)−nd(n−1)=−[d(n−1)−(n−1)d(n−2)]=
=(−1)2[d(n−2)−(n−2)d(n−3)]=⋯=(−1)n−2d(2)−2d(1)
d(n)=nd(n−1)+(−1)n
Travail en arrière:
d(2)=1
d(3)=3d(2)−1=3∗1−1
d(4)=4d(3)+1=4∗3∗1−4+1
d(5)=5d(4)−1=5∗4∗3∗1−5∗4+5−1
d(6)=6d(5)+1=6∗5∗4∗3∗1−6∗5∗4+6∗5−6+1=
=6!(12−13∗2+14∗3∗2−15∗4∗3∗2+16!)=
=6!(16!−15!+14!−13!+12!−11!+1)
Donc en général,
d(n)=n!(1−1+12!−13!+14!+⋯+1n!)
exx=−1
d(n)≈n!e
a,b,c,d,e,fb,d,a,c,f,ea -> b -> d -> c after which it returns to a
e -> f
(a b d c)(e f)
4
(2n)!2n2nn!p(2n)=(2n)!2nn!
Pour la R
simulation:
1. paired <- function(x) crossprod(x[x] - 1:length(x))==0
x[x]
8Paul -> Maria
Maria -> Paul
Max -> John
John -> Max
Max -> Maria
Maria -> Max
Paul -> John
John -> Paul
i
1
2. good <- function(x) sum(x==1:length(x)) == 0
x(1,2,3,4,5,6,7,8)
3.k.paired <- sum(i.good & i.paired)
est là pour exclure les permutations appariées comme celle ci-dessus dans le diagramme, qui ne sont pas des dérangements:
v <- c(1,2,3,4,5,6,7,8)
w <- c(1,2,3,5,4,6,7,8)
(c("is v paired?" = paired(v), "is w paired?" = paired(w),
"is v a derang?" = good(w), "is w a derang?" = good(w)))
# not all paired permutations are derangements.