您的位置:首页 > 其它

算法总结之最小生成树

2016-08-23 16:05 127 查看
最小生成树的作用:

有很多点,点点之间有很多边,边有边权,我们要选择一些边,将所有点互相联通,构成一颗树,即为最小生成树

模板题:http://codevs.cn/problem/1231/

算法:

prim

基本流程:开始从所有点 中任取一点,(通常取1号),然后找其他所有点离已经取得点构成的连通块最近的点,将其加入连通块,并将总代价加入这个点与联通块相连的边的边权,如此反复点数-1次即可。(找出离连通块最近的点可以使用堆优化)

代码:

kruskal

基本流程:

把所有边按照边权从小到大排序,从小到大扫,如当前边的两个端点,不在同一个并查集集合中,就将他们加入同一个并查集集合,并加入这条边。若两点在同一集合则忽略这条边。

代码:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  算法 最小生成树