FFT 快速傅利葉變換

2021-08-03 23:49:46 字數 1426 閱讀 3931

唔看了算導和乙個講的很清楚的部落格

我只是做了下筆記,盡量簡潔一點寫吧。

這樣複雜度就是

好像發現了驚天大秘密qwq 它們的位置是顛倒的誒!

怎麼計算rev陣列呢?

for (int i=1;i

i++)

rev[i]=rev[i>>1]>>1 | ((i&1) << l-1);

再看一下迭代的過程

最後貼一下**(uoj 34 模板題)

#include 

#define n 300010

#define pi acos(-1)

using

namespace

std;

int n,m,l,rev[n];

complex

a[n],b[n],c[n];

template

inline

void read(aqua &s)

void pre()

void fft(complex

*a,int f)

}}int main()

講完啦

運用下次再寫吧qwq

upd by 2018.2.9

附上ntt模板(uoj34)

#include 

#define n 300010

#define p 998244353

#define ll long long

using namespace std;

int n,m,l,rev[n],a[n],b[n],c[n];

void pre()

ll mpow(ll a,ll b)

void fft(int

*a,int f)

}} if (f==-1)

for (int i=0;i*mpow(n,p-2)%p;

}int main()

快速傅利葉變換FFT

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

快速傅利葉變換 FFT

bzoj 2179 fft快速傅利葉 果題 bzoj2194 請計算c k sigma a i b i k 其中 k i n 並且有 n 10 5。a,b中的元素均為小於等於100的非負整數。注意到i 和 i k有奇妙的聯絡 不妨嘗試把b翻轉 然後就變成卷積了。貼個模板 include define...

快速傅利葉變換 FFT

首先說一下我用fft做什麼,我要做的是多項式乘法,或者說,加速多項式乘法。考慮多項式a x j 0n 1aj xj,它一共有 n 項,我們稱它的次數界為 n。假設我們有兩個次數界為 n 的多項式a x 和b x 要求它們的和是非常簡單的,只需要將對應的係數相加,複雜度為o n 如果要求他們的積,則需...