高级算法设计与分析 学习笔记14 FFT

本章我们研究多项式乘法。

我们直接乘,时间复杂度是n^2。使用FFT则可以变成nlgn

​编辑

可以看到两个n°的多项式,我们直接乘,每种组合都要试一遍,就会要是n^2遍

​编辑

那么要怎么加速呢?

​编辑

首先多项式可以通过这种方法来表示

记录下n个点,想要原版形式的话就解矩阵方程吧。

​编辑

​编辑

​编辑

不过这种表示法太奇怪了,能不能来经典形式的?

​编辑

这里解释一下单位根:

单位根是复数分析中的一个概念,它是指满足以下等式的复数 ωω:

ω^n=1

这里的 n 是一个正整数,表示单位根的阶数。换句话说,单位根是一个复数,当它被提升到 n 次幂时,结果为1。单位根在复平面上的单位圆上均匀分布。

分治法!

Fn矩阵计算起来很简单:

相关推荐
Y.O.U..6 小时前
STL学习-容器适配器
开发语言·c++·学习·stl·1024程序员节
TT哇6 小时前
【Java】数组的定义与使用
java·开发语言·笔记
黑叶白树8 小时前
包和模块(上) python复习笔记
开发语言·笔记·python
T_Y99438 小时前
selenium学习日记
学习·selenium·测试工具
L_Z_J_I8 小时前
超子物联网HAL库笔记:多指针定位+循环收发缓冲区方案设计
笔记
我是水怪的哥8 小时前
一些有用的科研数据网站
经验分享·笔记
zhilanguifang9 小时前
ERC论文阅读(02)--SAC;-LSTM论文阅读笔记
论文阅读·笔记·lstm
糊涂君-Q9 小时前
Python小白学习教程从入门到入坑------第十九课 异常模块与包【下】(语法基础)
开发语言·python·学习·程序人生·改行学it
爱编程的小新☆9 小时前
Java篇图书管理系统
java·开发语言·学习
致奋斗的我们10 小时前
RHCE的学习(7)
linux·服务器·网络·学习·redhat·rhce·rhcsa