Kruskal 按照每条边的权值大小排序,每次加入一条最小的边(保证不会形成环,用并查集维护)直到加入了n 1条边 Kruskal适用于稀疏图 $O(m\ log \ m)$ ...
分类:
其他好文 时间:
2019-10-10 09:15:38
阅读次数:
75
要表示一个图G=(V,E),有两种标准的表示方法,即邻接表和邻接矩阵。这两种表示法既可用于有向图,也可用于无向图。通常采用邻接表表示法,因为用这种方法表示稀疏图(图中边数远小于点个数)比较紧凑。但当遇到稠密图(|E|接近于|V|^2)或必须很快判别两个给定顶点手否存在连接边时,通常采用邻接矩阵表示法... ...
分类:
其他好文 时间:
2019-09-30 09:31:57
阅读次数:
102
题目大意:给出一个连通的有向图,求图中顶点1到顶点n的、经过其余顶点一次且仅一次的最短路径及其长度。 解题报告: 考虑到重边,用邻接矩阵判重,稀疏图dfs时用邻接表,省时又给力! AC代码: 1 #include<bits/stdc++.h> 2 #define numm ch-48 3 #defi ...
分类:
其他好文 时间:
2019-08-27 21:25:41
阅读次数:
90
题目链接:https://vjudge.net/problem/POJ-1287 题目大意 略。 分析 最小生成树模板题。这题图为稀疏图,应选择 Kruskal 算法。 代码如下 1 #include <cmath> 2 #include <ctime> 3 #include <iostream> ...
分类:
Web程序 时间:
2019-08-05 14:27:09
阅读次数:
196
一、图的存储结构 图的数组(邻接矩阵)存储表示: 优点:1/0表示方便 缺点:不利于增加删除顶点 特殊:时间复杂度较高,不稀疏图;不过在无向图,可利用下三角形来压缩处理空间。 例子1: (需要辅助数组) 来源:https://www.cnblogs.com/XMU-hcq/p/6065057.htm ...
分类:
其他好文 时间:
2019-05-19 23:32:40
阅读次数:
211
弄清楚图 本章重点 1.邻接矩阵:表示顶点之间相邻关系的矩阵 邻接矩阵表示法的特点: 优点:容易实现图的操作,如:求某顶点的度、判断顶点之间是否有边、找顶点的邻接点等等。 缺点:n个顶点需要n*n个单元存储边; 空间效率为O(n2)。对稀疏图而言尤其浪费空间。 2.邻接表 (1)图的链式存储结构 ( ...
分类:
其他好文 时间:
2019-05-19 10:09:23
阅读次数:
120
1.图的表示方法 图:G=(V,E),V代表节点,E代表边。 图有两种表示方法:邻接链表和邻接矩阵 邻接链表因为在表示稀疏图(边的条数|E|远远小于|V|²的图)时非常紧凑而成为通常的选择。 如果需要快速判断任意两个节点之间是否有边相连,可能也需要使用邻接矩阵表示法。 邻接链表表示法的鲁棒性很高,可 ...
分类:
编程语言 时间:
2019-04-20 09:31:55
阅读次数:
130
因为是稀疏图,所以应当选择邻接表来存储 构造一个邻接表 这只是我的构造方法,有很多种更好的构造方法,大家可以自己去构造 因为是稀疏图,所以我们应该使用最小堆来选择当前最小的dist节点 新手,欢迎大家找错误,提意见。 ...
分类:
其他好文 时间:
2019-04-19 23:53:29
阅读次数:
204
https://www.jisuanke.com/course/2148/162484 ...
分类:
其他好文 时间:
2019-03-31 13:37:06
阅读次数:
267
前言 之前写过稀疏图的实现方法,这次写用矩阵存储数据的算法实现,只要会矩阵相乘的话,实现这个就很简单了。如果有不懂的可以先看一下下面两篇随笔。 MapReduce实现PageRank算法(稀疏图法) Python+MapReduce实现矩阵相乘 算法实现 我们需要输入两个矩阵A和B,我一开始想的是两 ...
分类:
编程语言 时间:
2019-03-24 19:55:50
阅读次数:
225