本来数学就不好,看到LRJ的数学专题直接跪了,上网百度了一下才知道扩展欧几里德算法的证明过程。
首先说一下朴素欧几里德算法,就是辗转相除法,很简单。
int gcd(int a,int b){
return b == 0 ? a : gcd(b,a % b);
}
下面主要说一下扩展欧几里得算法。
给出a,b 求 x,y使得 a * x + b * y = gcd(a,b);...
分类:
其他好文 时间:
2014-08-11 12:09:12
阅读次数:
202
1. 朴素的匹配算法(暴力匹配) 寻找子串p在主串s中第pos个字符后的位置。 分别利用计数指针i和j指示主串s和子串p中当前待比较的字符。算法的基本思想是:从主串s的第pos个字符起和模式的第一个字符比较,如果相等,继续逐个比较后续字符;否则从主串的下一个字符起,重新和模式的第一个字符比较。算法的...
分类:
其他好文 时间:
2014-08-08 23:51:51
阅读次数:
350
基本概念LCA:树上的最近公共祖先,对于有根树T的两个结点u、v,最近公共祖先LCA(T,u,v)表示一个结点x,满足x是u、v的祖先且x的深度尽可能大。RMQ:区间最小值查询问题。对于长度为n的数列A,回答若干询问RMQ(A,i,j),返回数列A中下标在[i,j]里的最小值下标。朴素LCA算法求出...
分类:
其他好文 时间:
2014-08-08 17:36:16
阅读次数:
226
一、概念:动态规划(Dynamic programming,DP)是一种在数学,科学计算和经济学中使用的,通过把原问题分解成相对简单的子问题的方式求解复杂问题。DP常常适用于有重叠子问题和最优子结构性质的问题,DP所消耗的时间往往小于朴素解法(拿空间换时间)。 动态规划背后色思想很简单那...
分类:
其他好文 时间:
2014-08-08 15:31:26
阅读次数:
181
【线段树的定义】 有时候我们经常会碰到一些跟区间有关的问题,比如给一些区间线段求并区间的长度,或者并区间的个数等等。这些问题的描述都非常简单,但是通常情况下数据范围会非常大,而朴素方法的时间复杂度过高,导致不能在规定时间内得到问题的解。这时,我们需要一种高效的数据结构来处理这样的问题,我们介绍一种....
分类:
其他好文 时间:
2014-08-07 21:45:40
阅读次数:
343
问题:找出某个元素的位置朴素的暴力方法class Solution {public: int search(int A[], int n, int target) { int i; for(i=0;i<n;i++) { if(A[...
分类:
其他好文 时间:
2014-08-06 21:45:42
阅读次数:
196
KMP算法是快速字符串匹配算法,朴素的暴力算法的时间复杂度为O(n*m),而KMP通过对模式串进行相应的处理,能够达到O(m+n)的速度。
我们知道在字符串匹配的时候最消耗时间的就是当匹配到第 i 个位置发现不匹配时,下一次又对模式串进行一次重新匹配,那么假如模式串中有很多相同的字母的话,这样做了很多重复的事情,那么我可以对模式串进行一定的处理,处理处一个对应的数组,让他保存假如这里不匹配是我下...
分类:
其他好文 时间:
2014-08-05 09:37:19
阅读次数:
172
机器学习问题方法总结大类名称关键词有监督分类决策树信息增益分类回归树Gini指数,Χ2统计量,剪枝朴素贝叶斯非参数估计,贝叶斯估计线性判别分析Fishre判别,特征向量求解K最邻近相似度度量:欧氏距离、街区距离、编辑距离、向量夹角、Pearson相关系数逻辑斯谛回归(二值分类)参数估计(极大似然估计...
分类:
其他好文 时间:
2014-08-03 23:05:56
阅读次数:
416
惨遭丽洁乱虐。。这一场也是比得乱七八糟的,4902本是丽洁定义比较难的题,结果数据随机的,被许多暴力水过了。。4904考察的是四边形不等式优化,但是这道题的dp方程实际上不满足该优化的条件。。朴素的o(n^3)会超时,所以这题目前是没有正解了。。我还写了个这题的贪心,强度挺高,可以对大概一半数据,错...
分类:
其他好文 时间:
2014-08-01 10:42:01
阅读次数:
278
plain 英 [ple?n] 美 [plen] adj. 平的;简单的;朴素的;清晰的n. 平原;无格式;朴实无华的东西adv. 清楚地;平易地n. (Plain)人名;(英)普莱恩;(法)普兰a collection of 一批,一些;收藏的;许多的;集…为一体的collection ...
分类:
其他好文 时间:
2014-08-01 10:37:51
阅读次数:
197