快速傅立叶变换多项式乘法?

时间:2012-07-06 04:07:40

标签: algorithm math computer-science fft

我使用FFT来评估某些点的多项式,以便可以使用值表示来表示。 (表示为与其程度相等的点数)

然而,要将两个d次多项式相乘,我需要在2d + 1点进行评估。然而,使用FFT进行评估(乘以统一的第d个根)仅评估d点处的多项式。因此,如果只评估d点的多项式,如何使用FFT来评估多项式评估? (而不是2d + 1)

1 个答案:

答案 0 :(得分:3)

你可以选择你评估的-1的第n个根。如果你需要2d-1分(我怀疑你这样做),只需使用-1的(2d-1)根。事实上,你通常会使用-1的第2个第k个根,其中2 ^ k是2> = 2d-1的第一个幂,因为它更容易获得2的幂的快速FFT。复杂度仍为O(d log d),因为O的定义允许恒定因子。