码迷,mamicode.com
首页 >  
搜索关键字:prim    ( 2863个结果
最小生成树:prim算法和kruskal算法
一个连通图的生成树是图的极小连通子图。它包含图中的所有顶点,并且只含尽可能少的边。若砍去它的一条边,就会使生成树变成非连通图;若给它增加一条边,则会形成一条回路。 最小生成树有如下性质: 1.最小生成树非唯一,可能有多个最小生成树; 2.最小生成树的边的权值之和总唯一,而且是最小的; 3.最小生成树的边数为顶点数减1。 构造最小生成树可以有多种算法。其中多数算法利用了最小生成树的下列一种...
分类:编程语言   时间:2015-05-14 22:09:36    阅读次数:198
hdu 1102 Constructing Roads
最小生成树树 prim算法,第一次写 #include #define maxn 100+5 #define inf 1<<30 using namespace std; int n; int mapp[maxn][maxn]; int visit[maxn]; int d[maxn]; int re; void prim() { fill(visit,visit+maxn,0); fill...
分类:其他好文   时间:2015-05-14 20:35:00    阅读次数:117
【数据结构】拓扑排序、最短路径算法、Dijkstra算法、无环图等等
图的定义图(graph)G = (V,E)由顶点(vertex)的集V和边(Edge)的集E组成。有时也把边称作弧(arc),如果点对(v,w)是有序的,那么图就叫做有向的图(有向图)。顶点v和w邻接(adjacent)当且仅当(v,w)属于E。如果无向图中从每一个顶点到其他每个顶点都存在一条路径,则称该无向图是连通的(connected)。具有这样性质的有向图称为是强连通的(strongly co...
分类:编程语言   时间:2015-05-12 09:33:55    阅读次数:853
一步两步学算法之最小生成树Prim算法
prim就是一个让树长大的过程 弄一个集合 从一个点开始不断向外搜索 找到权值最小的点 放进集合中 从这个集合所连的边再向外找 1 #define USED 0 2 #define NOADJ -1 3 void Prim(MaxtrixGraph G) 4 { 5 int i,j,k,mi...
分类:编程语言   时间:2015-05-10 23:57:45    阅读次数:175
zoj 1586 QS Network
最小生成树,刚刚学了Prim算法。对每条边变的权值进行预处理,c[i][j] = c[i][j] + p[i] + p[j] 其中c[i][j]为输入的权值,p[i],p[j]为连接这两个节点所需的费用。#include#include#include#includeusing namespace ...
分类:Web程序   时间:2015-05-07 00:23:01    阅读次数:187
The Semantics of Data
The Semantics of Data 0引例 1 The Binding of a Data Member 2Data Member Layout 3Data Member 的存取 4继承与Data Member 5Object Member Efficiency 6Pointer to Members 时隔很久,再次拾起<>一书.期间因为学习<<C++ Prim...
分类:其他好文   时间:2015-05-04 10:11:25    阅读次数:136
Bad Cowtractors.(POJ-2377)
最大生成树,只需要变一下改变值的部分就可以了。 尝试了一下运用并查集的kruskal算法,与prim相比各有利弊吧,还要根据数据特点适当选取。 #include #include #include #include #include #include #include using namespace std; int n,m,a,b,c,par[1005],rankk[1005]; struc...
分类:其他好文   时间:2015-05-01 10:44:48    阅读次数:130
Agri-Net.(POJ-1258)(最小生成树)
最小生成树算法。 #include #include #include #include #include #include using namespace std; const int INF = 1000000000; int cost[105][105]; int mincost[105]; bool used[105]; int n,a; int prim() { for(int...
分类:Web程序   时间:2015-04-30 21:57:26    阅读次数:143
最小生成树的两种算法:Prim和Kruskal算法
越来越明白了一个道理:你写不出代码的原因只有一个,那就是你没有彻底理解这个算法的思想!! 以前写过最小生成树,但是,水了几道题后,过了一段时间,就会忘却,一点也写不出来了。也许原因只有一个,那就是我没有彻底理解这两种算法。 主题: 其实,求最小生成树有两个要点,一个是权值最小,还有一个就是这个图必须是树。而Prime和Kruskal的不同之处在于两者选择的变量不同,Prime选择的是始终保持...
分类:编程语言   时间:2015-04-26 09:23:26    阅读次数:186
最小生成树2(Kruskal算法)
Kruskal算法: 1:按照边的权值的顺序从小到大查看一遍,如果不产生圈(重边也算),就把当前这条边加入到生成树中,基本算法证明和prim一样 2:如何判断是否产生负圈,假设现在要把连接顶点u和顶点v的边e加入到生成树中,如果加入之前u和v不在同一个联通分量里,那么加入e也不会产生负圈,反之,如果u和v在同一个连通分量里,那么一定会产生圈,可以使用并查集高效的判断是否属于同一个连通分量 P...
分类:编程语言   时间:2015-04-24 22:48:54    阅读次数:187
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!