数据结构图的应用范例_数据结构图的最小生成树的算法和应用举例

一、最小生成树介绍

图结构是一种非常重要的非线性数据结构,带权图的最小生成树在工程技术,科学管理的最优解问题中有着广泛的应用。

最小生成树:权值和最小的生成树

最小生成树的性质:假设G=(V,E)是个连通图,U是顶点V的一个非空子集。若(u,v)是一条具有最小权值的边,其中u∈U,v∈V-U,则必存在一棵包含边(u,v)的最小生成树。

产生最小生成树必须解决下边两个问题:

(1) 尽可能选取权值小的边,但不能构成回路

(2) 选取n-1条恰当的边以连通n个顶点。

最小生成树的算法主要有Kruskal算法和Prim算法,他们都是贪心算法的应用。

二、最小生成树的算法

(1) Kruskal算法

过程描述:始终以边为主导地位,先选择权值最小的边,总是选择当前可用最小权值边,并且每次判断两点之间是否已经间接连通,如果已经间接连通,则跳过此边。

时间复杂度是O(n*logn),适用于求边稀疏连通网的最小生成树。

(2) Prim算法

过程描述:Prim算法始终以顶点为主导,并且起始点的选择是任意的。

从起始点到其他点选择最小权值边,然后以此边两个顶点分别再找最小权值的边,同样已经间接连接的边跳过。

时间复杂度是O(n2),适用于求边稠密连通网的最小生成树。

三、最小生成树实际应用

(1) 解决矿井通风管道设计问题

(2) 几个城市(图1)之间怎么修路,可以使整体上路最短?

这个问题的求解,就可以用最小生成树(图2),也就是几个城市连通的最短路径。

03d12a619f793561f683b1949ebc58ea.png
1b10d9c7668ee14ae1f6ade91cb3b1e2.png

图 2

谢谢大家可以添加关注或点赞,您的鼓励和支持是我们继续努力的最大动力!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值