![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
基础算法
王文波~
清。。
展开
-
搜索补充
Kruskal算法int n, m; // n是点数,m是边数int p[N]; // 并查集的父节点数组struct Edge // 存储边{ int a, b, w; bool operator< (const Edge &W)const { return w < W.w; }}ed...转载 2020-02-08 23:15:39 · 292 阅读 · 0 评论 -
搜索与图论
树是一种特殊的图,与图的存储方式相同。对于无向图中的边ab,存储两条有向边a->b, b->a。因此我们可以只考虑有向图的存储。邻接矩阵:g[a][b] 存储边a->b(2) 邻接表:// 对于每个点k,开一个单链表,存储k所有可以走到的点。h[k]存储这个单链表的头结点int h[N], e[N], ne[N], idx;// 添加一条边a->bvo...转载 2020-02-08 23:08:06 · 180 阅读 · 0 评论 -
数据结构
单链表// head存储链表头,e[]存储节点的值,ne[]存储节点的next指针,idx表示当前用到了哪个节点int head, e[N], ne[N], idx;// 初始化void init(){ head = -1; idx = 0;}// 在链表头插入一个数avoid insert(int a){ e[idx] = a, ne[idx] = ...转载 2020-01-16 22:31:30 · 261 阅读 · 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] < x);...转载 2020-01-16 22:10:17 · 240 阅读 · 0 评论