快速傅利葉變換(FFT)學習筆記

2021-09-25 15:11:08 字數 1228 閱讀 9970

模板理解:

1.背景:完成兩個多項式的卷積

即:兩多項式形如∑i=

0nai

xi

\sum_^n a_x^

∑i=0n​

ai​x

i ,∑i=

0mbi

xi

\sum_^m b_x^

∑i=0m​

bi​x

i 卷積後為 ∑i=

0n+m

(ci=

∑j=0

iajb

i−j)

xi

\sum_^( c_=\sum_^ia_b_)x^

∑i=0n+

m​(c

i​=∑

j=0i

​aj​

bi−j

​)xi

2.樸素演算法: 係數對應相乘,複雜度 o(n

m)

o(nm)

o(nm)

3.fft優化:在o(k

logk

)o(klogk)

o(klog

k)時間內得出∑ci

\sum c_

∑ci​

(k

kk為第乙個大於n+m

n+mn+

m的二的冪次方)

3.1 fft過程

3.1.1 點值表示乙個多項式: 對於多項式∑i=

0nai

xi

\sum_^n a_x^

∑i=0n​

ai​x

i,用n+1

n+1n+

1個數對(xi

,yi)

(x_,y_)

(xi​,y

i​)表示, yiy_

yi​為xix_

xi​代入多項式後的值 。相反的,如果有n+1

n+1n+

1個數對,可以還原出乙個形如∑i=

0nai

xi

\sum_^n a_x^

∑i=0n​

ai​x

i的多項式。

3.1.2 引入複數作為代入的值。根據eix

e^ei

x的性質,可以實現用所有的xix_

xi​分治計算所有的yiy_

yi​具體過程:由於時間有限,今晚再補全。先參見cyk大佬的blog

例題練習(晚上才來填坑吧。。)

一、bzoj3527

二、bzoj3513

學習筆記 快速傅利葉變換 FFT

學習之前先看懂這個 範德蒙德 vandermonde 方陣的逆矩陣的求法以及快速傅利葉變換 fft 中idft的原理 gzy hhh開個玩笑。講一下 fft 的流程,我也不準備長篇大論地分析 fft.這樣的流程,最終複雜度是 o n log n 的,現在我們從最簡單的點值表示法講起。證明 顯然。設 ...

FFT 快速傅利葉變換 學習筆記

具體fft的原理,我就不解釋了 網上大佬講得都比我好 說白了fft直接作用就是計算兩個多項式f x g x 的結果的係數 暴力做法很容易想o n n fft用了一些數學上的方法把它優化成了 o nlogn 把這個式子按照奇偶性拆開 for int i 0 i 1 x i r i 1 x i 1 遞迴...

快速傅利葉變換FFT

fft的作用就不多說了,搞訊號處理的人都會用上。fft的由來 傅利葉變換ft 離散傅利葉變換dft 快速傅利葉變換fft。學習資料 1 陳後金的 數字訊號處理 裡面深入淺出,該有的公式都有,程式設計思想也有。2 一篇系統講述傅利葉變換的帖子 3 學生對fft的理解 4 工程人員對fft的簡單明瞭的總...