#数据结构与算法

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

数据结构实验之查找二:平衡二叉树

数据结构实验之查找二:平衡二叉树AC_Code1#include<stdio.h>2#include<stdlib.h>3structnode{4intdata,d;5structnode*l,*r;6};78intmax(intx,inty){9if(x>y)returnx;10else...

求逆元算法

费马小定理:若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.平衡树   ...

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

转载自: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...

es6 Set和Map数据结构

ES6提供了新的数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set本身是一个构造函数,用来生成Set 数据结构。consts=newSet();[2,3,5,4,5,2,2].forEach(x=>s.add(x));for(letiofs){console.log(i);}//...
代码星球 代码星球·2020-12-24
首页上一页...4041424344...下一页尾页