algorithm
临渊703
爱我所爱,行我所行。
展开
-
如何更好的理解和掌握 KMP 算法? --转载知乎(已修改其中的小问题)
转载的这个kmp算法我觉得非常的精炼,并且易懂。应该很多人都看过知乎的那篇文章,所以我把里面有2个小问题写在前面1.是getNext里面的问题 while循环那里要改一下,改为while(i<strlen(p)-1);不然会造成next数组越界2.是KMP里面的问题 还是while循环那里,要改为while(i<(int)strlen(t) &am...转载 2019-02-14 18:12:03 · 240 阅读 · 0 评论 -
回溯算法(DFS)通用解题框架总结+实例分析
很少写这么长的总结,算法对上学期一个简单交代,就是时间花的漫长的,用了一下午。惩罚自己以后多写一点,不写不是中国人~嘻嘻原创 2019-01-29 23:11:12 · 4653 阅读 · 0 评论 -
稍微高级的一点的素数判断方法(试除法,欧拉筛选法,根据素数分布的方法,Miller-Rabin素性测试法)C/C++
//素数判断有很多方法,试除法是平时常用的方法,筛选法我只举个埃拉托色尼筛选法和欧拉筛选,当然为了快还有一些其它的筛选方法,根据素数的分布来判断素数也是一种很有效率的方法,Miller-Rabin算法是针对很大的数来讨论的(当然小一点的数也可以判断) //试除法判断素数bool JudgePrime(int n){ if(n==2) return true;...原创 2018-09-03 17:07:13 · 958 阅读 · 0 评论 -
快速积 快速幂(以及取余)运算C/C++
#include <bits/stdc++.h>using namespace std;//简单来说就是把b当成2进制形式,然后累加;// 2*7=2*(1*2^0+1*2^1+1*2^2)=2*1*2^0+2*1*2^1+2*1*2^2; long long FastMul(long long a,long long b) //快速积 a*b { long long...原创 2018-09-03 16:12:56 · 2446 阅读 · 0 评论