#算法图解

石子合并,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种不同的声音。说话人识别是指软件或硬件接收语音信号,识别语音信号中出现的说话人,然后识别说话人的能力。特征提取是通过将语音波形以相对最小的数据速率转换为参数表示形式进行后续处理和分析来实现的。因此,可接受的分类是从优良和优质...

用 JavaScript 学习算法复杂度

在本文中,我们将探讨“二次方”和“nlog(n)”等术语在算法中的含义。在后面的例子中,我将引用这两个数组,一个包含5个元素,另一个包含50个元素。我还会用到 JavaScript 中方便的 performanceAPI 来衡量执行时间的差异。constsmArr=[5,3,2,...

web前端常见的加密算法介绍

在信息安全越来越受重视的今天,前端的各种加密也变得更加重要。通常跟服务器的交互中,为保障数据传输的安全性,避免被人抓包篡改数据,除了https的应用,还需要对传输数据进行加解密。目前常见的加密算法可以分成三类对称加密算法:AES、...非对称加密算法:RSA、...Hash算法:MD5、... 对称加密(也叫...
首页上一页...3536373839...下一页尾页