Que veut dire : for (int i = (1 << bits) - 1; i >= 0; --i)
Bonjour,
Dans un code source JAVA pour faire de la FFT je vois ceci :
Code:
1 2
| private int bits;
private int [] bitreverse = new int[MAXFFTSIZE]; |
puis
Code:
1 2 3 4 5 6 7 8 9
| for (int i = (1 << bits) - 1; i >= 0; --i) {
int k = 0;
for (int j = 0; j < bits; ++j) {
k *= 2;
if ((i & (1 << j)) != 0)
k++;
}
bitreverse[i] = k;
} |
Que veut dire : "(1 << bits)" ou "1<<j" dans ce contexte?
De même le "&" entre "i" et "(1<<j)" m'est obscur...
Merci pour vos lumières!