图——求最小生成树(一)Prime算法

网络的最小生成树的求解在现实中有广泛的应用
比较典型的方法主要有Prime算法和Kruskal算法
最小生成树相关概念:
带权图:边赋以权值的图称为网或带权图,带权图的生成树也是带权的,生成树T各边的权值总和称为该树的权。
最小生成树(MST):权值最小的生成树。
生成树和最小生成树的应用:要连通n个城市需要n-1条边线路。可以把边上的权值解释为线路的造价。则最小生成树表示使其造价最小的生成树。

MST性质:

设G=(V,E)是一个连通的网络,T=(U,TE)是正在构造的最小生成树。若边(u,v)的顶点u属于U,v属于V-U,即(u,v)是一端在U中,另一端在V-U(即属于V但不属于U)中且边的权值最小的边,则必然存在一棵包含边(u,v)的最小生成树。
证明
反证法:若G的任意最小生成树T都不包含(u,v ),即当把(u,v)加入T时,会构成回路,表明(u,v)可与T中另一条边互替,这时因为(u,v)权值最小,我们求的又是最小生成树,所以必然选择(u,v),这与假设矛盾。

算法实现

比起文字叙述,大家最好先通过比较

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值