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

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

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

​编辑

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

​编辑

那么要怎么加速呢?

​编辑

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

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

​编辑

​编辑

​编辑

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

​编辑

这里解释一下单位根:

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

ω^n=1

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

分治法!

Fn矩阵计算起来很简单:

相关推荐
-To be number.wan13 小时前
算法学习日记 | 双指针
c++·学习·算法
科技林总13 小时前
【系统分析师】9.1 信息系统安全体系
学习
爱问问题的小李13 小时前
AI生成的Threejs常用Api学习计划
人工智能·学习
沄媪13 小时前
CTF备赛学习
学习·ctf备赛·安全入门·windows安全系统
Bin Watson13 小时前
FOC 学习记录(1):自然坐标系建模和 DQ 轴的引出
学习
前端小菜袅13 小时前
Rollup 构建流程梳理笔记
笔记
『往事』&白驹过隙;13 小时前
C/C++中的格式化输出与输入snprintf&sscanf
linux·c语言·c++·笔记·学习·iot·系统调用
好好学习天天向上~~14 小时前
12_Linux学习总结_进程地址空间(虚拟地址)
linux·学习
red_redemption14 小时前
自由学习记录(119)
学习
invicinble14 小时前
关于学习技术栈的思考
java·开发语言·学习