前言
快速傅里叶变换(Fast Fourier Transform, FFT)是计算序列的离散傅里叶变换(DFT)或其逆变换(IDFT)的一种算法。
一般用于快速计算多项式乘法。
预备知识
单位复数根
n次单位复数根是满足 ωn=1 的复数 ω
显然n次单位复数根恰好有n个
根据复数的指数形式定义:
eiu=cos(u)+i×sin(u)
可以得到如下引理:
- 消去引理:对任何整数 n≥0,k≥0 以及 d>0 ,有 ωdkdn=ωkn
- 折半引理:如果 n>0 为整数,则n个n次单位复数根的平方构成的集合就是n/2个n/2次单位复数根的平方的集合
- 求和引理:对任意整数 n≥1 和不能被n整数的非负整数k,有 ∑n−1j=0(ωkn)j=0
多项式的表示方法
对于一个次数界为n的多项式
A(x)=∑i=0n−1aixi
我们可以用n维向量 (a0,a1……an−1) 来表示多项式的系数,这就是多项式的系数表示
或者将n个值 xi 代入多项式,得到n个值 yi