une permutation de taille $n$ peut être construite à partir d'une permutation de taille $n-1$ en rajoutant le nombre $n$ à toutes les positions possible.
Par exemple, à partir de la permutation $12$, on construit
$12~3$
$1~3~2$
$3~12$.
Et à partir de la permutation $21$, on construit
$21~3$
$2~3~1$
$3~21$
Les permutations de l'ensemble [1,2,3] par ordre lex sont dans l'ordre :
Remarquez qu'il faudra faire plusieurs appels récursifs : 1 pour chaque valeur de l'ensemble.
Si votre permutation commence par un nombre $k$, vous savez déjà que toutes les permutations qui commencent par $k' < k$ avec $k'$ dans la liste des nombres sont plus petites dans l'ordre lexicographique : combien sont-elles ? A ce nombre, vous devez ajouter le rang de votre permutation parmi celles qui commencent par $k$ (récursion...).
In [ ]: