Introduction

Nous souhaitons obtenir une liste de toutes les permutations possibles des éléments contenus dans un tableau.

Pour ceci, nous proposons un code récursif qui, pour un tableau de taille N, procède de la façon suivante :

  • Au moyen d'une boucle, il amène tour à tour chacun des éléments du tableau en position 1,

  • Après chaque échange, on demande le traitement sur le sous-tableau de taille N-1 en ignorant le 1er élément,

  • Sur un sous-tableau de taille 1, la permutation est complétée. Il suffit d'enregistrer le contenu du tableau en entier.