1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
String delTmp="";
//nbComp est le nombre total de combinaisons avec byteLine.Length Peg soit 2^(byteLine.length+1) -1
int nbComb= (1<<(byteLine.lentgh))-1;
/*
*on se sait de i comme d'un tableau de boolean pour les byteLine.length premiers bits, le reste etant inutilisé
*on se sert de i comme d'un masque sur le tableau byteLine pour savoir
*quels sont les Pegs a prendre pour toutes les combinaisons de 1 a byteLineLength
*si "true" est a la position j, alors on prend le Peg a la position j du tableau
*
*/
for(int i=1;i<=nbComb;++i){
for(int j=0;j<byteLine.length;++j){
if((i>>j &1)==1){
delTmp+=(char)byteLine[j];
}
}
} |