FFT多项式乘法学习笔记

这篇博客深入探讨了快速傅里叶变换(FFT)在多项式乘法中的原理和应用。通过理解n个n次单位复根的选择原因,如公式1:w(n,k)^2 = w(n/2,k),以及如何利用公式2:w(n,n/2+k) = -w(n,k)解决规模问题,解释了如何将大问题分解为小问题,实现复杂度为O(log(n))的解决方案。博主还提到了FFT与离散傅里叶变换(DFT)和逆离散傅里叶变换(IDFT)的关系,并强调了n个n次单位复根矩阵逆运算的重要性。虽然博主省略了部分详细步骤,但整体提供了对FFT算法的综合理解。" 135283035,10282337,华为OD机试真题:部门人力分配问题,"['华为od', 'java', '动态规划']
摘要由CSDN通过智能技术生成

基础知识了解:点击打开链接

公式证明:点击打开链接

综合了这两个博客我才懂了什么是FFT,所以这两个博客讲的比较细的我就不说了,说一些综合的.

为什么选择n个n次单位复根?

公式1: w(n,k)^2 = w(n/2,k)

应用了这个公式才可以把原来n大小的问题变成n/2的问题,这就是分治得到log(n)的由来.

将n个数分成奇数偶数分开处理得到公式F(x) = G(x^2) + xH(x^2),其中G(x)和H(x)函数就是划分的小问题,那么她和F(x)的问题除了规模不同问题是不是相同?是的。根据公式1得,x^2 = w(n,k)^2 = w(n/2,k),这不是n个规模是求w(n,k),现在n/2规模是求w(n/2,k)问题是完全相同的,那么又有问题了,k>n/2咋整?这不是就不能用了吗?那就要用到公式2了

公式2:w(n,n/2+k) = -w(n,k)

由上面那个公式可以得出F(w(n,k)) = G(w(n,k)^2) + w(n,k)H(w(n,k)^2),那么

F(w(n,n/2+k)) = G((-w(n,k))^2)-w(n,k)H((w(n,k))^2) = G(w(n,k)^2) - w(n,k)H(w(n,k)^2)不就是吧中间正号改成减号了吗.

所以知道F(w(n,k))就可以知道F(n,n/2+k).

其次就是n个n次单位复根组成的矩阵的逆矩阵

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值