自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 FFT算法解析

问题描述两个n次多项式相乘,其时间复杂度为O(n2)O(n^2),通过FFT来减小其问题的复杂度。分析过程FFT的基本思路是:我知道一个多项式表达式可以根据其表达式算出结果,同理我们也可以根据其结果算出表达式。对于A,B两个n次多项式,一共所有又2n+1个参数需要求解,我们至少需要2n+1个表达式。 FFT基本步骤:选择:选择至少2n+1个点。计算:分别计算出A(x0),A(x1),...

2017-11-15 09:48:55 7734

原创 最近对问题

问题描述有n个点,求距离最小的一对点。问题分析采用计算出所有点两两之间的距离,比较保留最小点距离就可以获得。这样时间复杂度为O(n2)O(n^2)方法改进采用分治的思想来解决问题,可以发现这个问题的难点不在分,而在合并。以下对算法步骤进行描述: 1. 找到一条线,将问题分解成两个子集S1,S2S1,S2。(每个子集的大小为n/2n/2) 2. 递归的发现S1,S2S1,S2中的最小距离点对d1,

2017-11-12 19:54:41 316

原创 分治法2

Chess-Board问题描述:有2kX2k2^k X 2^k大小的棋盘,其中有一块和其他的不一样。使用4种LL型的card将棋盘铺满棋盘。如下图所示: 问题分析:首先所给的4个card是可以将最小矩形的三个块组合的所有情况都考虑到了(C34=4)(C_4^3 = 4),所以我们将问题规模减小为(2X2),实际上就是1时,问题都是可以解决的。问题的难点就在于如何将问题分解成多个类似的小问题,很

2017-11-12 14:40:09 260

原创 分治法1

基本步骤:将问题分解成若干个相同的小问题(可以有特殊处理)对每个小问题求解将小问题的解合并起来(可以有特殊处理)示例bit位为n的整数相乘常规算法,其复杂度为O(n2)O(n^2)现在将x,yx, y表示成: x=x1∗2n/2+x0y=y1∗2n/2+y0x= x_1*2^{n/2} + x_0 \\ y= y_1*2^{n/2} + y_0 x1,x0,y1,y0x_1,x

2017-11-11 13:32:05 205

原创 算法复杂度分析

递推算法对于递推类和循环类算法,我们一般统计其主要的基本操作个数与问题的规模大小。从而就可以推出算法复杂度。递归算法对于任意α!=1\alpha != 1的通式T(n)=T(αn)+T((1−α)n)+cnT(n) = T(\alpha n) + T((1-\alpha)n)+cn,其时间复杂度都是O(nlogn)O(nlogn)对于范式T(n)=aT(n/b)+ndT(n)=aT(n/b) +

2017-11-11 11:08:25 777

原创 汉诺塔问题

汉诺塔问题汉诺塔问题我们都知道是采用递归思路去解决,既然是递归那么主要的问题的就是如何分解问题和聚合解,我们的目的是从AA移到CC,所以将问题分解成以下三步: 1. 把AA上的n−1n-1个盘从AA移到B 2. 把A最后一个盘移到C, 3. 再把B上的盘移到C。 将A,B,C抽象成原地,中间站,目标地。就可以得到我们最后的递归表达式,需要注意的在编码过程中需要关注三者的变化。void mov

2017-11-10 20:50:10 119

原创 算法复杂度分析方法

递推与循环类寻找基本操作与问题的规模,就可以求出其问题的复杂度。 只要存在一个常数C,n0C,n_0使得f(n)<=Cg(n)f(n) <= Cg(n),那么g(n)g(n)就是上界,下界同理。当上界和下界相等时,那么这个复杂度也是近似复杂度。 基于比较的排序算法的时间复杂度下界为O(nlogn)O(nlogn). 1. n个不同的元素,可能的大小顺序一共有n!n!种 2. 抽两个元素a,b

2017-11-10 20:06:54 1077

原创 素数测试

欧几里得算法输入:m,n 输出:m和n的最大公约数 步骤: 1. 如果n=0n=0,返回mm的值作为结果,结束。否则进入2; 2. 计算m/n, 将余数赋值给r。 3. 将n的值赋值给m,将r的值赋值给n, 返回第一步。 其实这里的思想十分清晰,被除数与除数的最大公约数等于除数与余数的最大公约数。实际上根据上面的描述我们将代码写成递归形式:int Euclid_gcd(int m, in

2017-11-10 19:11:07 181

原创 整数相乘

分析直接进行二进制计算,复杂度为O(n2)O(n^2)采用如下的方法: x∗y={2(x∗⌊y/2⌋),x+2(x∗⌊y/2⌋),if y is evenif y is odd x*y= \begin{cases} 2(x*\lfloor y/2 \rfloor), & \text {if $y$ is even} \\ x + 2(x*\lfloor y/2 \rfloor), & \te

2017-11-08 16:37:42 443

原创 Fbonacci 的python实验与分析

Fbonacci 的python实验与分析递归方法def Fibonacci(n): if n== 0: return 0; if n== 1: return 1; else: return Fibonacci(n-1) + Fibonacci(n-2)这个方法的时间复杂度大概是1.69n1.69^n,所以时间效率是不可取的,我实验的结果(i5处理器)是n=30时

2017-09-22 22:33:53 301

原创 慢特征分析(SFA)

慢特征分析(SFA)基本原理使用来自时间信号的信息来学习不变特征的线性因子模型。其基本思想是:在一个场景中其重要特征是基本不变的。例如:摄像头几乎总是跟着主角走。

2017-08-19 13:44:59 8791

原创 信道分解

基本原理利用多个来自多个相同且相互独立信息源的数据分离出信息源的方法。数学表达为了简化分析,我们将ICA数学表达: X=AS+nX= AS+ n 其中,S=[s1,s2,s3,...,sN]S=[s_{1},s_{2},s_{3},...,s_{N}]为N个源信号构成的向量,所以S的矩阵大小为M×NM \times N。在这里我们假设采样的点数(或者说通道数)与源信号数量一样为

2017-08-19 10:31:53 1123

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除