Pyhon实现FFT,iFFT

出处

《算法导论》 ch30介绍的一个多项式相乘解法,能在nlogn时间内解决两个次数界为n的多项式相乘问题

注意这个方法的前提条件很严苛,只适用于两个次数界为n的多项式,但是我们可以牺牲一些空间,给高位添加0使得输入满足这个条件

基本概念

基本概念书上说得很清楚,我做了思维导图,需要原件可以在这里下载:github链接

在这里插入图片描述

原理

原理其实书上讲得非常明白了,仔细看就能看懂,关键是折半引理和求和引理还有公式30.10和534页那两个等式的推导

代码

代码其实很粗糙,自己也写了很久,主要是iFFT那里,要不要除以n看错了,也就是公式30.11那一块没看完就开始写,着急了
然后中途我用numpy.fft里面的fftifft来做参考,由于实现不同用这两个函数计算出来的值应该和我们计算的值不一样,但是一时半会没想到,后面做出来ifft还是挺兴奋的

代码交完作业再贴

猜你喜欢

转载自blog.csdn.net/hhmy77/article/details/110007638