模板理解:
1.背景:完成兩個多項式的卷積
即:兩多項式形如∑i=
0nai
xi
\sum_^n a_x^
∑i=0n
aix
i ,∑i=
0mbi
xi
\sum_^m b_x^
∑i=0m
bix
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
aix
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
aix
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的簡單明瞭的總...