Je cherche une implémentation rapide de l'algorithme "arrangement" (permutation avec doublons). En prenant N objets (A en quantité a, B en quantité b, ...), générer toutes les combinaisons possibles.
Exemple:Disposition de n objets (Permutation avec doublons)
Arrangement("AAA", "B", "CC") would return :
"AAABCC" "AABACC" "AABCAC" "AABCCA" "ABAACC" "ABACAC" "ABACCA" "ABCAAC"
"ABCACA" "ABCCAA" "BAAACC" "BAACAC" "BAACCA" "BACAAC" "BACACA" "BACCAA"
"BCAAAC" "BCAACA" "BCACAA" "BCCAAA" "AAACBC" "AACABC" "AACBAC" "AACBCA"
"ACAABC" "ACABAC" "ACABCA" "ACBAAC" "ACBACA" "ACBCAA" "CAAABC" "CAABAC"
"CAABCA" "CABAAC" "CABACA" "CABCAA" "CBAAAC" "CBAACA" "CBACAA" "CBCAAA"
"AAACCB" "AACACB" "AACCAB" "AACCBA" "ACAACB" "ACACAB" "ACACBA" "ACCAAB"
"ACCABA" "ACCBAA" "CAAACB" "CAACAB" "CAACBA" "CACAAB" "CACABA" "CACBAA"
"CCAAAB" "CCAABA" "CCABAA" "CCBAAA"
(code en C, C# ou Pascal, si possible)
Merci à l'avance
Philippe
duplication possible de [Permutations d'un ensemble de nombres donné] (http://stackoverflow.com/questions/1653500/permutations-of-a-given-set-of-numbers) - il y a aussi plusieurs autres questions connexes –
Cette fonction fonctionne lorsque tous les objets sont différents. – PhilippeC