自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 最长公共子序列

最长公共子序列dp[i][j]dp[i][j]dp[i][j]表示a1a1a1数组到第iii位、a2a2a2数组到第jjj位时,最长的公共子序列长度for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++) { if(a1[i]==a2[j]) dp[i][j]=dp[i-1][j-1]+1; else dp[i][j]=max(dp[i-1][j],dp[i][j-1]); }}...

2021-06-01 18:46:13 123 1

原创 子序列长度问题

最长不上升子序列长度令dp[i]dp[i]dp[i]表示:最长不上升子序列长度为iii时,最优的结尾元素。for(int i=2;i<=n;i++){ if(a[i]<=dp[len]) dp[++len]=a[i]; else { int p=upper_bound(dp+1,dp+1+len,a[i],greater<int>())-dp; dp[p]=a[i]; }}len==maxlength;//贪心思想 O(nlogn)...

2021-06-01 16:26:47 134

原创 各种背包问题

背包问题1. 01背包最基本的背包问题就是01背包问题(01 knapsack problem):一共有NNN件物品,第iii件物品的重量为w[i]w[i]w[i],价值为v[i]v[i]v[i]。在总重量不超过背包承载上限WWW的情况下,能够装入背包的最大价值是多少(每件物品只有一个)?令dp[i]dp[i]dp[i]表示当背包容量为iii时能够装入背包的最大价值for(int i=1;i<=n;i++) for(int j=W;j>=w[i];j--) dp[j]=max(

2021-06-01 15:41:07 128

原创 快速幂算法

快速幂ll quickpow(ll a,ll b)//a的b次方{ ll base=a; ll ans=1; while(b) { if(b&1) ans*=base; base*=base; b>>=1; } return ans;}

2021-05-26 20:47:29 70

原创 杂七杂八小知识

小知识\可以用来给特殊字符转义,要是想展示'\'可以用\\例如在""中无法正确显示双引号则可以"\"\""最终可以显示""

2021-05-25 21:54:57 103

原创 图形旋转

图形旋转若原图形为a[i][j]a[i][j]a[i][j] 旋转后图形为b[i][j]b[i][j]b[i][j]则将图形顺时针旋转九十度b[j][n−i+1]=a[i][j]b[j][n−i+1]=a[i][j]b[j][n−i+1]=a[i][j]将图形逆时针旋转九十度b[n−j+1][i]=a[i][j]b[n−j+1][i]=a[i][j]b[n−j+1][i]=a[i][j]将图形在水平方向翻转(以中央铅垂线为中心形成原图案的镜像)b[i][n−j+1]=a[i][j]b[i][n

2021-05-25 13:55:28 177

原创 数学知识集合

唯一分解定理任何一个大于1的自然数N,如果N不为质数,那么N可以唯一分解成有限个质数的乘积。偶数位数回文数(除11)必定不是质数除11外,偶数位的回文数如456654等,都不是质数,他们都可以被11整除。假如一个回文素数的位数是偶数,则它的奇数位上的数字和与偶数位上的数字和必定相等;依据数的整除性理论,简略判别这样的数肯定能被11整除,所以它就不可能是素数。整数整除性的特征1、能被2整除的数的特征:个位数字是0、2、4、6、8,即个位数是偶数的整数可以被2整除。2、能被3整除的数的特征:各个数

2021-05-14 18:12:48 918

原创 素数筛

素数筛欧拉筛 时间复杂度O(n)O(n)O(n)memset(prime,true,sizeof(prime));prime[1]=false;for(int i=2;i<=n;i++){ if(prime[i]) a[++cnt]=i; for(int j=1;j<=cnt&&i*a[j]<=n;j++) { prime[i*a[j]]=false; if(i%a[j]==0) break; }}...

2021-05-14 17:53:29 66

原创 调和级数

级数求和已知Sn=1+12+13+……+1n=∑k=1n1kS_{n}=1+\frac{1}{2}+\frac{1}{3}+……+\frac{1}{n}=\sum_{k=1}^{n}\frac{1}{k}Sn​=1+21​+31​+……+n1​=k=1∑n​k1​欧拉推导过求调和级数有限多项和的表达式为∑k=1n1k=ln⁡(n+1)+γ    (γ≈0.5772156649)\sum_{k=1}^{n}\frac{1}{k}=\ln\left ( n+1\r

2021-05-07 05:56:54 1083

原创 海伦公式

海伦公式假设在平面内,有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:S=p(p−a)(p−b)(p−c)S=\sqrt{p\left ( p-a\right )\left ( p-b\right )\left ( p-c\right )}S=p(p−a)(p−b)(p−c)​而公式里的p为半周长(周长的一半):p=a+b+c2p=\frac{a+b+c}{2}p=2a+b+c​一般来讲仅用四边长无法表达某个四边形面积(某些特例除外),必须添加某些条件,比如角、对角线等。婆罗

2021-05-06 23:22:38 983 1

原创 主定理 Master Theorem

主定理 Master Theorem什么是主定理?在算法分析中,主定理(master theorem)提供了用渐近符号表示许多由分治法得到的递推关系式的方法。主定理的作用?简单来说是用来计算递归时时间复杂度的一种方法。当有递归关系式T(n)=aT(nb)+O(nd)T\left ( n \right )= aT\left ( \frac{n}{b} \right )+O\left ( n^{d} \right )T(n)=aT(bn​)+O(nd)其中nnn为问题规模,aaa为执行的递归子

2020-11-29 22:00:25 1023

空空如也

空空如也

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

TA关注的人

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