FFT的最优算法是什么?以及其代码(C语言),谢谢!
展开全部
应该是库利-图基算法和桑德-图基算法吧。这两种算法的时间复杂度是一样的,需要(N/2)log2N次的复数乘法和Nlog2N的复数加法。
当然你要是用基-4的FFT会更快,需要3/8Nlog2N次的复数乘法和Nlog2N次的加法。但这样做的一个很麻烦的事是在做快速傅立叶变换时需要将原数据补足到2或4的整数次方。因此如果数据量合适的话基-4要快,如果数据不合适还是用基-2好。至于C语言代码暂时没有。还有为什么要编C啊?用Matlab不是更好吗?连循环都不用写,甚至还有已经写好的函数fft(),直接看这个函数算法就好了
当然你要是用基-4的FFT会更快,需要3/8Nlog2N次的复数乘法和Nlog2N次的加法。但这样做的一个很麻烦的事是在做快速傅立叶变换时需要将原数据补足到2或4的整数次方。因此如果数据量合适的话基-4要快,如果数据不合适还是用基-2好。至于C语言代码暂时没有。还有为什么要编C啊?用Matlab不是更好吗?连循环都不用写,甚至还有已经写好的函数fft(),直接看这个函数算法就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询