FFT&&NTT

概念:

\(n\)次单位根——\(\omega_{n}\)\(\omega_n^n=1\)
可使用复数知识求得\(\omega_n=cos(2\pi/n)+sin(\pi/n)i\)
显然\(\omega_n\)具有很多性质\(:\)
1. 周期性 \(\omega_n^{n/2+i}=-\omega_n^i\) \(\omega_n^{kn+i}=\omega_n^i\)
2. 消去性 \(\omega_{dn}^{dk}=\omega_n^k\)
3. 和为零 \(\sum_{j=0}^{n-1} {(\omega_n^k)}^j=0\)

推式子:

\(A(x)=a_0+a_1x+a_2x^2+...+a_{n-1}x^{n-1}\)
\(A_1(x)=a_0+a_2x+a_4x^2+...+a_{n-2}x^{n/2-1}\)\(A_2(x)=a_1+a_3x+a_5x^2+...+a_{n-1}x^{n/2-1}\)
那么\(:\)
\(A(x)=A_1(x^2)+xA_2(x^2)\)
\(x=\omega_n^k\)带入,得:
\(A(\omega_n^k)=A_1(\omega_n^{2k})+\omega_n^kA_2(\omega_n^{2k})\)
我们只需递归求解即可写出fft(递归版)
fft原理已经解释清楚,至于非递归版可以参考网上详解。

posted @ 2018-08-10 17:20  蒟蒻czx  阅读(82)  评论(0)    收藏  举报