图的连通性问题:无向图的连通分量和生成树,所有顶点均由边连接在一起,但不存在回路的图。设图 G=(V, E) 是个连通图,当从图任一顶点出发遍历图G 时,将边集 E(G) 分成两个集合 T(G) 和 B(G)。其中 T(G)是遍历图时所经过的边的集合,B(G) 是遍历图时未经过的边的集合。显然,G1...
分类:
编程语言 时间:
2015-04-08 22:58:16
阅读次数:
302
一:起因
(1)关于图的算法一般是比较复杂的,自己在这方面也是比较弱的,首先是图的存储问题 和 遍历问题:
存储分为两种,邻接矩阵 和 临街表;遍历分为DFS 和 BFS两种,非常类似于二叉树的先跟遍历和层次遍历。
(2)图在实际应用中是非常广泛的,这与万物归一,万物相连的理论是一致的,两个物体之间有着千丝万缕的联系,我们成这种联系建立的网络为图(带权图);联系的强弱为边的权重。
(3)图...
分类:
编程语言 时间:
2015-04-08 16:24:48
阅读次数:
182
1.题目描述:点击打开链接
2.解题思路:本题考察最小生成树,利用Kruskal算法解决。我们来设想一下这样一个无向图:如果在征募某个人a时,利用了a和b之间的关系,那么就有一条a到b的边。假设这个图中存在圈,那么无论以什么顺序征募这个圈上的所有人,都会产生矛盾。因为其中的关系必须单向利用。比如B和A最亲近,那么有一条边A->B,而C又和B最亲近,那么有B->C,可能实际上A和C也是最亲近的,但...
分类:
其他好文 时间:
2015-04-07 21:48:01
阅读次数:
188
这题我用prim算法和kruskal算法都提交了一下从代码量来看,prim算法更简洁一些,从时间复杂度来看,prim:O(n^2),kruskal:O(mlogm),kruskal更优kruskal:#include #include #include using namespace std;co....
分类:
其他好文 时间:
2015-04-06 15:41:45
阅读次数:
137
深夜来一发,裸的最小生成树,数据量还挺大,kruskal算法g++始终过不去,c++刚好飘过,这个时候就体现出kruskal和prim的适用范围的不同了,前者适用于稀疏图,后者适用于稠密图。kruskal算法: 1 #include 2 #include 3 using namespace st.....
分类:
其他好文 时间:
2015-04-06 00:52:57
阅读次数:
239
1.Kruskal算法A表示最小生成树所有边的集合.思路:将所有边按照权重从小到大排序,依次从中选择最小的边,若边的两个结点不在同一棵树中,就将这条边加入A.伪代码:Kruskal(G,w) A = ? for each vertex v in G.V MAKE-SET(v...
分类:
其他好文 时间:
2015-04-05 23:29:55
阅读次数:
241
题目连接:http://poj.org/problem?id=1861题目的意思就是找最小生成树那我们选择kruskal算法 我先来说一下kruskal算法:假设 WN=(V,{E}) 是一个含有 n 个顶点的连通网,则按照克鲁斯卡尔算法构造最小生成树的过程为:先构造一个只含 n 个顶点,而边集为空...
分类:
其他好文 时间:
2015-04-05 23:16:06
阅读次数:
157
最小生成树
一个有 n 个结点的连通图的最小生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的权值总和最小的边。
刘汝佳>P343详细介绍了最小生成树相关的知识。
下面直接给出Kruskal算法的模板:
#include
#include
#include
#include
#include
using namespace std...
分类:
其他好文 时间:
2015-04-05 06:44:04
阅读次数:
140
题目:在一个平面上有很多点,其中一些点已经被直线段连接,现在要把所有点连成一个整体,
要求新加入的直线段长度和最小。
分析:最小生成树。这里使用kruskal算法,先把一直线段的集合合并(并查集),然后在计算即可。
说明:╮(╯▽╰)╭。
#include
#include
#include
#include
#include
#include
usi...
分类:
其他好文 时间:
2015-04-03 19:25:03
阅读次数:
146
poj——2031 最小生成树(MST) Kruskal算法Building a Space StationTime Limit:1000MSMemory Limit:30000KTotal Submissions:4985Accepted:2503DescriptionYou are a memb...
分类:
编程语言 时间:
2015-03-31 22:08:35
阅读次数:
186