An improved digit-reversal permutation algorithm for the fast Fourier and Hartley transforms
Donnie Evans · IEEE Transactions on Acoustics Speech and Signal Processing · 1987
All radix-B fast Fourier transforms (FFT) or fast Hartley transforms (FHT) performed "in-place" require at some point that the sequence elements he permuted such that, indexing the elements 0 to N - 1, the element with index i is swapped with the element whose index is j. The permutation is called digit-reversing, because if i is represented as a string of digits, base B, then j is that index whose representation is the same string of digits written in reverse order. N is a power of B andB \geq 2. An elegant algorithm has been found that Performs this "perfect shuffle" more efficiently and, according to timing experiments, runs about eight times faster than the fastest other algorithm known to the author. The algorithm is of order O(N) and led, for example, to a saving of 7 percent in the total (radix-2) FFT running time for N = 1024.