最小瓶颈生成树:(给出加权无向图,求一棵生成树,是的最大边权尽量小) 可以从一个空树开始,按照权值从小到大,依次加入各条边,则图第一次连通的时候,改图的最小生成树就是原图的最小瓶颈生成树。 这一过程就是Kruskal,原图的最小生成树就是一棵最小瓶颈生成树。 最小瓶颈路:(u,v,求一条路径从 u ...
分类:
其他好文 时间:
2016-12-06 20:09:15
阅读次数:
204
一、最短路问题和最小生成树。 带权图分为有向和无向,无向图的最短路径又叫做最小生成树,有prime算法和kruskal算法;有向图的最短路径算法有dijkstra算法和floyd算法。 生成树的概念:联通图G的一个子图如果是一棵包含G的所有顶点的树,则该子图称为G的生成树 生成树是联通图的极小连通子 ...
分类:
其他好文 时间:
2016-11-30 19:56:49
阅读次数:
224
最小生成树在一个图中可以有多个,但是如果一个图中边的权值互不相同的话,那么最小生成树只可能存在一个,用反证法很容易就证明出来了。 当然最小生成树也是一个图中包含所有节点的权值和最低的子图。 在一个图中权值最小的那个边一定在最小生成树中,如果一个图包含环,环中权值最大的边一定不在最小生成树中,还有就是 ...
分类:
编程语言 时间:
2016-11-27 19:44:04
阅读次数:
350
Kruskal算法: 不断地选择未被选中的边中权重最轻且不会形成环的一条。 简单的理解: 不停地循环,每一次都寻找两个顶点,这两个顶点不在同一个真子集里,且边上的权值最小。 把找到的这两个顶点联合起来。 初始时,每个顶点各自属于自己的子集合,共n个子集合。 每一步操作,都会将两个子集合融合成一个,进 ...
分类:
编程语言 时间:
2016-11-23 08:00:34
阅读次数:
249
最小生成树 1.定义 2.kruskal 算法 3.Prim 算法 1.定义 G=(V,E)为连通无向图,V为结点的集合,E为结点的可能连接边 对每条边(u ,v)都赋予权重w(u ,v) 目标:找到一个无环子集T, 既能将所有结点连接起来,又具有最小权重。 T是由G生成的树,并把这种问题叫做最小生 ...
分类:
其他好文 时间:
2016-11-20 11:17:58
阅读次数:
176
kruskal 时间复杂度 O(|E| * log|V|) 按权值顺序依次判断,如果不产生圈则放进去 时间主要用在边的排序 代码来自《挑战编程》 ...
分类:
其他好文 时间:
2016-11-15 23:12:40
阅读次数:
157
这个题……感觉离线和在线的代码难度差不多(pb_ds不要说话)。 离线的话,就是把所有询问按照w排个序,然后一边Kruskal+平衡树启发式合并一边回答询问就好了。 在线也不难写。首先Kruskal重构树(这个Kruskal重构树是不按秩合并还要添虚点的那种……),那么每个点可以到达的点一定在某个子 ...
分类:
其他好文 时间:
2016-11-12 19:17:23
阅读次数:
333
题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1029 题目大意:一个发电站,给n座房子供电, 任意房子之间有电线直接或者间接相连接, 现在想知道需要连接这些房子花费的平均电线长度。平均电线长度 = (最长电线长度 + 最短电线 ...
分类:
其他好文 时间:
2016-11-06 14:22:12
阅读次数:
220
题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出orz 输入输出格式 输入格式: 第一行包含两个整数N、M,表示该图共有N个结点和M条无向边。(N<=5000,M<=200000) 接下来M行每行包含三个整数Xi、Yi、Zi,表示有一条长度为Zi的无向边连接结点Xi、Yi 输出 ...
分类:
其他好文 时间:
2016-11-03 01:50:18
阅读次数:
158
最小生成树 一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边。最小生成树可以用kruskal(克鲁斯卡尔)算法或prim(普里姆)算法求出。 在一给定的无向图G = (V, E) 中,(u, v) 代表连接顶点 u 与顶点 v 的边( ...
分类:
其他好文 时间:
2016-11-02 14:15:28
阅读次数:
224