算法模板
基本算法的模板
zhbbbb!
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
KMP详细解释及KMP算法模板
KMP是什么,KMP解决什么类型的问题KMP全称为Knuth Morris Pratt算法,是一种高效的字符串匹配算法,寻找一个字符串中是否包含另一个字符串,例如char *s = "ababababcab";char *p = "ababc";s为模板串(主串),p为字串,在s中找到p的位置...原创 2020-10-23 19:56:55 · 3293 阅读 · 1 评论 -
C++最小生成树基础算法模板
主要内容由于堆优化的prim算法基本不使用所以仅写出prim算法和Kruskal算法模板prim算法多用于稠密图int n; // n表示点数int g[N][N]; // 邻接矩阵,存储所有边int dist[N]; // 存储其他点到当前最小生成树的距离bool st[N]; // 存储每个点是否已经在生成树中// 如果图不连通,则返回INF(值是0x3f3f3f3f), 否则返回最小生成树的树边权重之和int prim(){原创 2020-10-11 20:08:19 · 432 阅读 · 0 评论 -
C++最短路问题基础算法模板
先上本篇博客的主要内容(图片有一处打错了应该是dijkstra)朴素dijkstra算法时间复杂度为O(n2),多用于不存在负权边的稠密图(指边数远大于节点数)中int g[N][N], dis[N], n, m;//g[N][N]为邻接矩阵用于存储每条边,dis[N]存储某个点到1号点的最小距离, n为点数,m为边数bool visit[N];//储存每个点的最短路是否确定int ...原创 2020-03-02 21:17:22 · 482 阅读 · 0 评论 -
高精度加减乘除算法模板
本文中的高精度加减乘除的数据范围为正整数,不考虑负数的加减乘除高精度加法vector<int> add(vector<int> &A, vector<int> &B){ int t = 0; vector<int> C; for(int i = 0; i < A.size() || i <...原创 2020-02-11 22:35:34 · 220 阅读 · 0 评论 -
快速排序,归并排序算法模板
快速排序算法模板void quick_sort(int q[], int l, int r){ if(l >= r) return ; int i = l - 1, j = r + 1, x = q[l + r >> 1]; while(i < j) { do i++; while(q[i] < q[x])...原创 2020-02-10 12:40:50 · 360 阅读 · 0 评论 -
二分查找算法模板
二分算法思想我们目标区间定为[l, r], 每次缩小一半的空间,知道l = r时我们就找到目标值版本1当我们把区间划分为[l, mid]和[mid + 1, r]时,即我们每次令r = mid或l = mid + 1;算法模板int bsearch_1(int l, int r){ while(l < r) { int mid = (l + r) ...原创 2020-02-01 22:43:33 · 203 阅读 · 0 评论
分享