关于Prim算法,自己的一些总结

0.最小线的分类:连接线、向内最小线、向外最小线

1.向外最小线连接的下一个顶点,如果该线段不是下一个顶点的最小权重线,那么下一个最小线一定是下一个顶点的最小线,以此类推

2.不断地向外最小线后,最后衔接的一定是向内最小线

3.向内最小线连接了顶点之后,如果下一个最小线还是向内最小线,那么该向内最小线的权重一定大于等于上一个向内最小线,以此类推

4.不断地向内最小线后,最后衔接的一定是连接线

5.连接线之后的线规则,又重新按照1、2、3、4的总结继续出现

6.最小生成树的线段由每个顶点的最小权重线段和连接线组成(所有权值加起来最小)

论证1:每一个顶点的最小线一定会被选中为最小生成树的线段

如果该顶点是最后一个顶点,那么肯定会直接选择它的最小线

如果该顶点是独立区块的最后一个顶点,那么肯定会直接选择它的最小线

如果该顶点还连接着其他顶点,那么在接入该顶点时如果不是选择了它的最小线,那么在选择下一个最小线的时候,一定会选择该顶点的最小线作为最小线(总结1、总结5)

论证2:最小线出现相同权值的时候,无论选择哪一条最小线,都没问题

1.如果相同权值的线段都是向内最小线,当选择其中一条作为最小生成树的线段后,接下来再选择最小线的时候,一定会选择另外一条作为最小生成树的线段

2.如果相同权值的线段都是向外最小线(不可能出现的情况,因为一定会先从其中一条最小线先延伸出去)

3.如果相同权值的线段都是连接线,当随机选择其中一条作为最小线延伸出去后,即连接了一个新的区块,在该区块内的连接工作完成后,选择下一个连接线的时候,如果之前连接线的权值依然是最小的,那么会选择它来连接线的区块,否则会选择一个更小的连接线来连接新的区块

4.在3的情况下,如果出现了区块内(区块1)的最小线(一定是向内最小线)的权值大于之前连接线权值的情况(此时区块1内的连接工作尚未完成),那么在下次选择最小线的时候,会选择之前的连接线作为最小线来连接新的区块(区块2),因为区块1到区块2的最小连接线的权值一定大于之前连接线的权值

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值