快速沃爾什轉換

来自testwiki
跳转到导航 跳转到搜索
输入向量(1,0,1,0,0,1,1,0)的例子

計算數學中,一個與阿達馬變換有高度相關的快速沃爾什轉換Template:Lang-enFWHTh)是一個十分有效率的演算法,目的是計算阿達馬變換。一個直觀且基本的沃爾什轉換,他的計算複雜度 大約是 O(N2)。而快速沃爾什轉換只需要NlogN 個加法或是減法即可。

而快速沃爾什轉換是一個分而治之的演算法,是一個常見的遞迴方法,將大小為 N的沃爾什轉換拆成兩個大小為N/2 的沃爾什轉換。這樣的寫法是根據2N×2N阿達馬矩陣 HN的遞迴定義:

HN=12(HN1HN1HN1HN1).

其中 1/2 的正規化項可以提出或省略掉。

沃爾什矩陣,又叫沃爾什序列,快速沃爾什轉換FWHTw,就是用上面的作法計算以後,把輸出結果排成序列。

相關條目

參考資料

Template:電腦科學小作品