void IFFT(complex<double>*FD,complex<double>*TD,int r)
{
long count;
int i;
complex<double>*X;
count=1<<r;
X=new complex<double>[count];
memcpy(X,FD,sizeof(complex<double>)*count);
for(i=0;i<count;i++)
{
X[i]=complex<double>(X[i].real(),-X[i].imag());
}
FFT(X,TD,r);
for(i=0;i<count;i++)
{
TD[i]=complex<double>(TD[i].real()/count,-TD[i].imag()/count);
}
delete X;
}
{
long count;
int i;
complex<double>*X;
count=1<<r;
X=new complex<double>[count];
memcpy(X,FD,sizeof(complex<double>)*count);
for(i=0;i<count;i++)
{
X[i]=complex<double>(X[i].real(),-X[i].imag());
}
FFT(X,TD,r);
for(i=0;i<count;i++)
{
TD[i]=complex<double>(TD[i].real()/count,-TD[i].imag()/count);
}
delete X;
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货