acm 快速傅里叶变换的理解
A(x)=A4[0](x*x)+x*A4[1](x*x);
x=1,w,w*w,w*w*w
wi means w^i
n=4;w=w[4]
result shuould be
y[0]=A4[0](1*1)+1*A4[1](1*1);
y[1]=A4[0](w*w)+w*A4[1](w*w);
y[2]=A4[0](w2*w2)+w2*A4[1](w2*w2);
y[3]=A4[0](w3*w3)+w3*A4[1](w3*w3);
1*1=w2*w2=(-1*-1) w2=w0*-1=-1;
w*w=w[2];w3*w3=w(6%4)=w*w=w[2]
w2=-1
w3=-w w3=w(1+4/2);
pro perform
=============
w[n] means e^(2πi/n)
w[4]*w[4]=w[2]
n=2, w=w[2]
A4[0](1),A4[0](w[2])
A[0]=A2[0]+A2[1]
A[1]=A2[0]-A2[1]
----
A4[1](1),A4[1](w[2])
A[2]=A2[2]+A2[3]//0,1
A[3]=A2[2]-A2[3]
==============
n=4;w=w[4]
//两边各取一半就能取到x^2,右边乘上本轮应该有的wk,这样就合理了
y[0]=A4[0](1)+1*A4[1](1)
y[2]=A4[0](1)-1*A4[1](1)
y[1]=A4[0](w[2])+w*A4[1](w[2])
y[3]=A4[0](w[2])-wA4[1](w[2])
===============
0,1,2,3
0,2,1,3
y[0]=a[0]+w[2]0*a[2];
y[1]=a[0]+w[2]1*a[2];
y[2]=a[1]+w[2]0*a[3];
y[3]=a[1]+w[2]1*a[3];
===============
y[0]=a[0]+w[2]0*a[2]+w[4]0*a[1]+w[4]0*w[2]0*a[3];
y[2]=a[0]+w[2]0*a[2]+w[4]2*a[1]+w[4]2*w[2]0*a[3];
w[4]2=-w[4]0
y[1]=a[0]+w[2]1*a[2]+w[4]1*a[1]+w[4]1*w[2]1*a[3];
y[3]=a[0]+w[2]1*a[2]+w[4]3*a[1]+w[4]3*w[2]1*a[3];
w[4]3=-w[4]1
===============
y[2]=a[0]+(w[4]2*w[4]2=w[4]4=1=w[2]0)a[2]+(w[4]2=-w[4]0=-1)....
y[3]=a[0]+(w[2]1=w[4]6=w[4]2=w[2]1)a[2]+(w[4]3=-w[4]1,)....(w[4]3*w[2]1=w[4]5=w[4](5+4)=w[4]9)*a[3];
===============
所以分析一下n=8的情况
首先分成n1=4,n2=4
此时分别递归出两层,
在回溯的时候,y0,y1,y2,y3的意义就是n=4时取的四个特征值的y
n1=4有可以分成n3=2,n4=2两层
每一段的,y0,y1的意义就是n=2时取的两个特征值的y
那么n=2时有四段这样的
其中每两段,左边一段就代表了A4[0],右边一段就代表了A4[1],这样就能合成A8[0],右边的A8[1]同理
那么其实,根据公式yk+4/2也就递推出来了(n=4时),所以连续处理的一段的左一半因为在之前的处理中
就是按照wn升幂的,所以现在直接拿出来,那么他的值就是A8[0](w^0*2),A8[0](w^1*2),A8[0](w^2*2),A8[0](w^3*2)
右边和左边当然是对称的,然后连续一整段的
什么事连续一整段呢,我解释下
像(0,1)(2,3)(4,5)(6,7)
这四段是不连续的,他们的意义都一样,w^0,w^1的取值
而(0,1,2,3,4,5,6,7),
取出的四段则是连续的,(0,4)(1,5)(2,6)(3,7)
所以每一段的旋转系数W,都要按照Wn,每次幂次加一,这样才能对的上yk=A0[(x^k)^2]+x^k*A1[(x^k)^2]
中右边的系数,n=8,最后一次回溯计算则有连续4对,k=0,1,2,3
还有一个需要注意的地方是
W8=e^(2pi*i)/8
则
W2=e^(2pi*i)/2 =W8*W8*W8*W8
除的数越小,则Wn的次数越高,而不是越低
acm 快速傅里叶变换的理解的更多相关文章
- 多项式 之 快速傅里叶变换(FFT)/数论变换(NTT)/常用套路【入门】
原文链接https://www.cnblogs.com/zhouzhendong/p/Fast-Fourier-Transform.html 多项式 之 快速傅里叶变换(FFT)/数论变换(NTT)/ ...
- [学习笔记] 多项式与快速傅里叶变换(FFT)基础
引入 可能有不少OIer都知道FFT这个神奇的算法, 通过一系列玄学的变化就可以在 $O(nlog(n))$ 的总时间复杂度内计算出两个向量的卷积, 而代码量却非常小. 博主一年半前曾经因COGS的一 ...
- 「快速傅里叶变换(FFT)」学习笔记
FFT即快速傅里叶变换,离散傅里叶变换及其逆变换的快速算法.在OI中用来优化多项式乘法. 本文主要目的是便于自己整理.复习 FFT的算法思路 已知两个多项式的系数表达式,要求其卷积的系数表达式. 先将 ...
- 快速傅里叶变换(FFT)详解
本文只讨论FFT在信息学奥赛中的应用 文中内容均为个人理解,如有错误请指出,不胜感激 前言 先解释几个比较容易混淆的缩写吧 DFT:离散傅里叶变换—>$O(n^2)$计算多项式乘法 FFT:快速 ...
- 快速傅里叶变换(FFT)
扯 去北京学习的时候才系统的学习了一下卷积,当时整理了这个笔记的大部分.后来就一直放着忘了写完.直到今天都腊月二十八了,才想起来还有个FFT的笔记没整完呢.整理完这个我就假装今年的任务全都over了吧 ...
- 快速傅里叶变换(FFT)_转载
FFTFFT·Fast Fourier TransformationFast Fourier Transformation快速傅立叶变换 P3803 [模板]多项式乘法(FFT) 参考上文 首 ...
- HDU 1402 A * B Problem Plus 快速傅里叶变换 FFT 多项式
http://acm.hdu.edu.cn/showproblem.php?pid=1402 快速傅里叶变换优化的高精度乘法. https://blog.csdn.net/ggn_2015/artic ...
- 51Nod 快速傅里叶变换题集选刷
打开51Nod全部问题页面,在右边题目分类中找到快速傅里叶变换,然后按分值排序,就是本文的题目顺序. 1.大数乘法问题 这个……板子就算了吧. 2.美妙的序列问题 长度为n的排列,且满足从中间任意位置 ...
- $FFT$(快速傅里叶变换)
- 概念引入 - 点值表示 对于一个$n - 1$次多项式$A(x)$,可以通过确定$n$个点与值(即$x$和$y$)来表示这唯一的$A(x)$ - 复数 对于一元二次方程 $$x^2 + 1 = 0 ...
随机推荐
- RocketMQ在linx安装及其有关问题解决
Linx安装和使用: rocketmq官网:http://rocketmq.apache.org/ 首先安装JDK(推荐使用JDK1.8),并配置环境变量 下载rocketmq压碎包并解压到指定目录 ...
- Http中的options请求
引自:https://www.jianshu.com/p/5cf82f092201.https://www.cnblogs.com/mamimi/p/10602722.html 一.options是什 ...
- 中间件:ElasticSearch组件RestHighLevelClient用法详解
本文源码:GitHub·点这里 || GitEE·点这里 一.基础API简介 1.RestHighLevelClient RestHighLevelClient的API作为ElasticSearch备 ...
- 微信小程序代码上传,审核发布小程序
1.打开微信开发者工具 管理员扫码 -> 填写好小程序的项目目录.AppID(必须是客户已注册好的AppID).项目名称 2.在app.js中修改id(客户登录后台管理系统的id),app.js ...
- 命名秘籍周获近五千星——GitHub 热点速览 v.21.04
作者:HelloGitHub-小鱼干 命名一直是编程界的难点,这次 naming-cheatsheet 就能帮上你的忙.按照它的 SID(Short..Intuitive.Descriptive)原则 ...
- HA工作机制
HA工作机制 HA:高可用(7*24小时不中断服务) 主要的HA是针对集群的master节点的,即namenode和resourcemanager,毕竟DataNode挂掉之后影响 不是特别大,重启就 ...
- UserControl和CustomControl两者区别
UserControl 将多个WPF控件(例如:TextBox,TextBlock,Button)进行组合成一个可复用的控件组: 由XAML和Code Behind代码组成: 不支持样式/模板重写: ...
- Web信息收集之搜索引擎-GoogleHacking
Web信息收集之搜索引擎-GoogleHacking 一.信息收集概述 二.Google Hacking 2.1 site 2.2 filetype 2.3 inurl 2.4 intitle 2.5 ...
- zabbix监控设备结果异常问题
1.现象描述 paloalto防火墙升级后发现zabbix监控其CPU.风扇等硬件信息和端口流量数据错误. 2.现象分析 由于zabbix并没有做过任何调整,防火墙也只是升级.根据现象并不好排查.但是 ...
- [源码分析] Dynomite 分布式存储引擎 之 DynoJedisClient(1)
[源码分析] Dynomite 分布式存储引擎 之 DynoJedisClient(1) 目录 [源码分析] Dynomite 分布式存储引擎 之 DynoJedisClient(1) 0x00 摘要 ...