#算法的乐趣

在线算法&&离线算法

【在线算法】所谓在线算法就是说,每次请求及时处理,处理完之后,直接返回,然后等待处理下一次请求。所以一般在线算法有个预处理过程,预处理数据之后,能够更快速的处理每次请求的结果,但是会有一个相对长一点的预处理过程。(e.g.ST算法)【离线算法】所谓离线算法只是在来了非常多的请求之后,一次性处理多个请求,能够不依赖于预处...
代码星球 ·2020-12-27

Javis March算法

学堂在线课程《计算几何》模板: JarvisMarch算法算法的复杂度更准确的表示为O(nh)。h又由最终输出结果,即凸包本身来决定,输出结果决定了构造过程的复杂度,这就是所谓的“输出敏感性”。这种类型的算法又被称为outputsensitivealgorithm。这种特性在其它凸包算法中也会体现1struc...
代码星球 ·2020-12-27

石子合并,GarsiaWachs算法优化

   思路:可以发现朴素的区间dp已经不足以解决这个问题了。对于石子合并问题,有一个最好的算法,那就是GarsiaWachs算法。时间复杂度为O(n^2)。设序列是stone[maxn],从左往右,找到一个最小的且满足stone[k-1]<=stone[k+1]的k,找到后合并sto...

RMQ ---(ST算法)

RMQ---(ST算法)RMQ(RangeMinimum/MaximumQuery),即区间最值查询,是指这样一个问题:对于长度为n的数列a,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列a中下标在i,j之间的最小/大值。如果只有一次询问,那样只有一遍for就可以搞定,但是如果有许多次询问就无法在很快...
代码星球 ·2020-12-27

求逆元算法

费马小定理:若p是素数,a是正整数且不能被p整除,则ap-1==1(modp)费马小定理的拓展:ap==a(modp)欧拉定理:对任意互素的a和n.设Φ(n)为小于n且与n互素的正整数的个数,有aΦ(n)==1(modn)欧拉定理的拓展:aΦ(n)+1==a(modn)求乘法逆元的作用:除以一个数再取模时,可以将这个数...
代码星球 ·2020-12-27

manacher算法详解+模板 P3805

前言:记住manacher是一个很简单的算法。首先我们来了解一下回文字串的定义:若一个字符串中的某一子串满足回文的性质,则称其是回文子串。(注意子串必须是连续的,而子序列是可以不连续的)那么若给定一长度为n的字符串,要求出最长回文子串的长度,怎么做呢?首先想到的是暴力搜索,我就不赘述思路了。那如果n特别大呢?10的7次...

ORZ hzwer——OI省选算法汇总

简单列了一点1.1基本数据结构1.数组2.链表,双向链表3.队列,单调队列,双端队列4.栈,单调栈1.2中级数据结构1.堆2.并查集与带权并查集3.hash表  自然溢出  双hash1.3高级数据结构1.树状数组2.线段树,线段树合并3.平衡树   ...
代码星球 ·2020-12-26

欧几里德与扩展欧几里德算法的理解、实现与应用

转载自:http://www.cnblogs.com/frog112111/archive/2012/08/19/2646012.html 欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大公约数。基本算法:设a=qb+r,其中a,b,q,r都是整数,则gcd(a,b)=gcd(b,r),即gcd(a,...

NOIP算法总结与复习

(看了看李总的蓝皮书,收获颇多,记下此文,以明志~~)1、最大公约数,最小公倍数2、筛法球素数3、mod规律公式4、排列组合数,错排5、Catalan数6、康托展开7、负进制8、中位数的应用9、位运算1、朴素加法减法2、亿进制加法减法3、乘法4、除法5、亿进制读入处理6、综合运用1、冒泡2、快排3、堆排4、归并1、概念...
代码星球 ·2020-12-26

RMQ-ST算法的理解与实现(C++)

RMQ(RangeMinimum/MaximumQuery),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列A中下标在i,j之间的最小/大值。ST算法(SparseTable),ST(SparseTable)算法是一个非常有名的在线处理RMQ问题...

java实现DES算法

importjava.util.UUID;importjavax.crypto.Cipher;importjavax.crypto.SecretKey;importjavax.crypto.SecretKeyFactory;importjavax.crypto.spec.DESKeySpec;importjavax.c...
代码星球 ·2020-12-26

算法——基础知识

 答:算法(Algorithm):一个计算过程,解决问题的方法。   程序= 数据结构+算法   时间复杂度小结:  1.时间复杂度是用来估计算法运行时间的一个式子(单位)。  2.一般来说,时间复杂度高的算法比复杂度低的算法慢  3.常见的时间复杂度(按效率排序)    - O(1)&n...
代码星球 ·2020-12-25

算法——解迷宫

 ...
代码星球 ·2020-12-25

React 中 Virtual DOM 与 Diffing 算法的关系

VirtualDOM是一种编程理念。UI信息被特定语言描述并保存到内存中,再通过特定的库,例如 reactDOM与真实的DOM同步信息。这一过程成为 协调(Reconciliation)。 与之对应的数据结构VirtualDOM反映到实际的数据结构上,就是每一个 react&nb...

一些常用的语音特征提取算法

语言是一种复杂的自然习得的人类运动能力。成人的特点是通过大约100块肌肉的协调运动,每秒发出14种不同的声音。说话人识别是指软件或硬件接收语音信号,识别语音信号中出现的说话人,然后识别说话人的能力。特征提取是通过将语音波形以相对最小的数据速率转换为参数表示形式进行后续处理和分析来实现的。因此,可接受的分类是从优良和优质...
首页上一页...3132333435...下一页尾页