ok je vais le lire
Version imprimable
ok je vais le lire
:cry: après vérification j'ai constater que mes fonction de générations des mots possibles ne sont pas efficaces
exemple pour une chaine de caractère = "abcd"
j'ai les mots possibles :
Citation:
abcd
abdc
adbc
adcb
abcd
abdc
badc
bacd
bcad
bcda
badc
bacd
cabd
cadb
cdab
cdba
cabd
cadb
badc
bacd
bcad
bcda
badc
bacd
alors par exemple que acbd manque !! :aie::aie::aie:
voici la fonction que j'ai utilisé pour affichier tout les combinaisons possibles
des commmentaires ?? 8O8O8OCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 void permuter(char ch[],int i,int j) { int aux; aux=ch[i]; ch[i]=ch[j]; ch[j]=aux; } void combinaison(char ch[],int i, int n,FILE *f) { int j; if (i==n) { afficher(ch,n,f); } else for(j=i;j<n;j++) { permuter(ch,i,j); combinaison(ch,i+1,n,f); } }
alors pour ca tu as des algo :D
std::prev_permutation et std::next_permutation
http://r0d.developpez.com/articles/algos-stl/#LII-D-3
Avec "abcd" j'en trouve 24 ce qui correspond bien à 4*3*2*1
je te laisse regarder ;)
SInon permuter existe déja : std::swap
merci Mongaulois, je vais jetai un oeil sur ces algo