最新 最热

【算法备案】算法安全监测制度建设的填写

之前在公众号更新了一期【算法备案中落实算法安全主体信息的填写】,很多客户反馈还是不清楚怎么填,本周我结合了之前通过的备案项目,总结了以下几个点,可作为参考...

2023-08-14
4

普通人如何理解递归算法

当人们提到“递归”一词,不知道如何理解它,也有人会问递归和迭代有什么区别?首先可以从定义上入手来分析,递归是自身调用自身的函数进行循环、遇到满足终止条件的情况时逐层返回来结束。迭代则是函数内某段代码实现循环,循...

2022-05-21
4

ACM算法竞赛——埃氏筛(模板)

求1~n中质数的个数void get_primes(int n){ for(int i = 2; i <= n; i ++) { if(!st[i]) { primes[cnt ++] = n; for(int j = ...

2022-05-18
1

ACM算法竞赛——试除法判断质数(模板)

最简单的判断质数的方法bool is_prime(int x){ if (x < 2) return false; for (int i = 2; i <= x / i; i ++ ) if (x % i == 0) return false; ret...

2022-05-18
1

ACM算法竞赛——匈牙利算法(模板)

匈牙利算法是一种在多项式时间内求解任务分配问题的组合优化算法,并推动了后来的原始对偶方法。1955年,库恩(W.W.Kuhn)利用匈牙利数学家康尼格(D.Kőnig)的一个定理构造了这个解法,故称为匈牙利法。(百度百科)匈牙利算法用...

2022-05-18
1

ACM算法竞赛——染色法判别二分图 (模板)

时间复杂度:O(m+n)int n; // n表示点数int h[N], e[M], ne[M], idx; // 邻接表存储图int color[N]; // 表示每个点的颜色,-1表示未染色,0表示白色,1表示黑色// 参数:u表示当前节点,c表示当前点的颜色bool df...

2022-05-18
1

ACM算法竞赛——Kruskal算法(模板)

克鲁斯卡尔算法是求连通网的最小生成树的另一种方法。与普里姆算法不同,它的时间复杂度为O(eloge)(e为网中的边数),所以,适合于求边稀疏的网的最小生成树 。(百度百科)int n, m; // n是点数,m是边数int p[N]; // 并...

2022-05-18
1

ACM算法竞赛——朴素版prim算法(模板)

普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树。意即由此算法搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点(英语:Vertex (graph theory)),且其所有边的权值之和亦为最小。该算法于1930...

2022-05-18
1

ACM算法竞赛——floyd算法(模板)

Floyd算法又称为插点法,是一种利用动态规划的思想寻找给定的加权图中多源点之间最短路径的算法,与Dijkstra算法类似。该算法名称以创始人之一、1978年图灵奖获得者、斯坦福大学计算机科学系教授罗伯特·弗洛伊德命名。(...

2022-05-18
1

ACM算法竞赛——Bellman-Ford算法(模板)

bellman-ford算法一般在竞赛中用不到,因为它的时间复杂度是严格的O(VE),存在负权边的单源最短路问题常用SPFA算法,但如果给我难题给出要求经过的边数小于等于k,就必须用bellman-ford算法。...

2022-05-18
1