2坑,3次WA。1.判断重边取小。2.自边舍去。(个人因为vis数组忘记初始化,WA了3次,晕死!!) 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 ...
分类:
其他好文 时间:
2014-07-23 14:59:06
阅读次数:
226
最小生成树水题。prim一次AC 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 10 #define typec int11 using namesp...
分类:
其他好文 时间:
2014-07-22 23:29:57
阅读次数:
235
最小生成树的性质
MST性质:设G = (V,E)是连通带权图,U是V的真子集。如果(u,v)∈E,且u∈U,v∈V-U,且在所有这样的边中,
(u,v)的权c[u][v]最小,那么一定存在G的一棵最小生成树,(u,v)为其中一条边。
构造最小生成树,要解决以下两个问题:
(1).尽可能选取权值小的边,但不能构成回路(也就是环)。
(2).选取n-1条恰当的边以连接网的n个顶点。...
分类:
其他好文 时间:
2014-07-19 23:27:19
阅读次数:
285
最小生成树之prim算法 边赋以权值的图称为网或带权图,带权图的生成树也是带权的,生成树T各边的权值总和称为该树的权。最小生成树(MST):权值最小的生成树。生成树和最小生成树的应用:要连通n个城市需要n-1条边线路。可以把边上的...
分类:
其他好文 时间:
2014-07-19 18:20:31
阅读次数:
367
先生成MST,然后对于MST上的每一条边,如果有其他边的长度与之相等,将其删去之后再求一次MST,如果和原来的cost相同,则不唯一#include #include #include #include #include #include #include #include #include #in...
分类:
其他好文 时间:
2014-07-16 18:21:23
阅读次数:
214
F - MST
Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others)
SubmitStatus
Problem Description
Given a connected, undirected graph, a spanning tree of that graph...
分类:
其他好文 时间:
2014-07-12 17:42:21
阅读次数:
199
关于三个简单的图论算法prim,dijkstra和kruskal三个图论的算法,初学者容易将他们搞混,所以放在一起了。prim和kruskal是最小生成树(MST)的算法,dijkstra是单源最短路径的算法。prim最小生成树prim算法采用了贪心策略:把点分成两个集合,A为已被处理(已经在最小生...
分类:
其他好文 时间:
2014-07-12 00:34:01
阅读次数:
216
给你一些人名,然后给你n条连接这些人名所拥有的房子的路,求用最小的代价求连接这些房子的花费是否满足要求。
附带C++ /JAVA实现...
分类:
编程语言 时间:
2014-07-11 08:21:41
阅读次数:
214
判断最小生成树是否唯一。
先扫一遍边,找出相等的边并标记 vis;
然后生成最小生成树,总权值为 ans,并记录下哪些边在第一次生成中使用了。use;
最后扫描所有边,有相等的,并且使用的边。把它标记为删除 del;然后生成最小生成树。
如果跟第一颗树权值一样,表明生成树不是唯一的。
#include
#include
#include
#includ...
分类:
其他好文 时间:
2014-07-06 10:28:48
阅读次数:
135
搭建一个最小代价的网络,最原始的最小生成树的应用。
这里使用Union find和Kruskal算法求解.
注意:
1 给出的数据是原始的矩阵图,但是需要转化为边表示的图,方便运用Kruskal,因为需要sort
2 减少边,一个矩阵最多需要(N*N-N)>>1条边,有人讨论本题是否有向,那是无意义的,因为本题的最小生成树和方向无关。
3 使用Union find是为了判断是否有环,比原...
分类:
Web程序 时间:
2014-06-30 08:10:08
阅读次数:
200