最小生成树之算法记录【prime算法+Kruskal算法】【模板】
2017-05-01 19:04
393 查看
最小生成树之算法记录【prime算法+Kruskal算法】【模板】
首先说一下什么是树:1、只含一个根节点
2、任意两个节点之间只能有一条或者没有线相连
3、任意两个节点之间都可以通过别的节点间接相连
4、除了根节点没一个节点都只有唯一的一个父节点
5、也有可能是空树(不含任何节点)
最小生成树就是:
在所有数据满足是一棵树的情况下一条将所有节点都连接起来且长度最短的一条路(因为任意两个节点之间有权值
(相连的两点之间权值为一个具体的数,不相连的两个点之间权值为无穷大))
下面介绍通用的求最小生成树的两种算法:
ps:这里用的两种算法都是用邻接矩阵实现适合点稠密型数据或者数据较小的情况:
(1)prime算法:
kruskal算法:
此算法的核心就是在并查集(并查集知识请看 知识小总结记录分类中的并查集(http://www.cnblogs.com/tonghao/p/4442821.html))的基础上对两点之间距离进行排序:
find()函数用来查找根节点
mix函数用来合并两个节点,使两个节点的父节点相同
利用结构体排序:
相关文章推荐
- 最小生成树之算法记录【prime算法+Kruskal算法】【模板】
- 最小生成树之算法记录【prime算法+Kruskal算法】【模板】
- 最小生成树之算法记录【prime算法+Kruskal算法】【模板】
- 最小生成树之算法记录【prime算法+Kruskal算法】【模板】 .
- POJ-1251 Jungle Roads 最小生成树 两种算法的简单模板
- hdu 1863 畅通工程 最小生成树模板入门题 prim+kruskal两种算法AC。
- 最小生成树Prime算法(模板)
- 最小生成树prime算法模板
- 模板_krustra最小生成树算法
- 最小生成树算法模板
- Kruskal(克鲁斯卡尔) 最小生成树 算法详解+模板
- POJ3164 最小树形图 有向图的最小生成树 模板题 朱刘算法 朱永津-刘振宏算法
- 算法记录---最小生成树【kruskal&&prim】
- 求解最小生成树的算法 kruskal算法(附模板)
- Hihocoder 之 #1097 : 最小生成树一·Prim算法 (用vector二维 模拟邻接表,进行prim()生成树算法, *【模板】)
- 最小生成树 Kruskal 算法模板
- 最小生成树-Kruskal算法(模板) 蓝桥杯 - 算法训练 - ALGO - 6 安慰奶牛(克鲁斯卡尔)
- 最小生成树算法模板
- prime算法(最小生成树模板)
- 最小生成树prime算法模板