说明:
1、基本思路:将十进制转化为二进制数,然后把二进制最低位当作最高位,最高位当作最低位再转化为十进制
2、只考虑了FFT点数为2的整数次幂
3、代码以8点FFT为例,经过DataReRank(int)函数处理后,Data[ ]里数据已经重新排列
4、倒序数的产生有一种比较流行的算法:雷德算法,在此没有采用这种方法
5、水平所限,代码难免质量不高
#include<iostream>
#include<list>
#include<vector>
using namespace std;
float Data[] = {0,1,2,3,4,5,6,7};//进行FFT的数据
void DataReRank(int num);//对数据倒序,有一种雷德算法可以完成此功能,不过在此并未采用
int main(){
DataReRank(8);
return 0;
}
void DataReRank(int num){
int BitNum = log(num