QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2774|回复: 0
打印 上一主题 下一主题

[其他资源] 最小生成树

[复制链接]
字体大小: 正常 放大

1198

主题

4

听众

2977

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2023-8-5 15:07 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
如下图所示:最小连通子图就是边要尽可能的少,但是要保持联通

7 i2 i+ w1 J$ q2 ^% [1 \
对于最小生成树而言如下图:边上的权值总和最小就是最小生成树。前提是要连通。

+ L4 j% c$ B* z9 [! b2 v1 h' z
已经知道最小生成树的概念之后,对于一个带权连通无向图的话,如何生成最小生成树呢?。下面有两种方法,一种是prim算法,另一种是Kruskal算法。prim算法如下图

7 x7 J0 d; {* h( a/ {
对于上面的图来说,我们随机找到一个节点,例如农场,那么距离农场最近的为电站。那么我们就有了农场到电站这条线了。接下来观察这两个节点,看这两个节点连接其他节点的路线最短的。很明显农场到p城路线最短。接下来找这3个节点中距离其他节点最近的,很明显p城到学校距离最近。那么我们就有了p城到学校的线路。在4个节点中寻找距离其他节点最近的,p城到矿场最近,在5个节点中寻找最近的,矿场到渔村最近。最后路线变为。
' E3 C$ P# w; X+ e& J
Kruskal算法:
2 `/ _0 t" K: G4 M5 J7 q# G6 H' i
prim算法是寻找和节点之间的最小距离,那么kruskal算法就是选择最小的边。
如上图,最短的边是学校到p城,下一个最短的是矿场到渔村,下一个最短的是农场到电站,在下一个是p城到矿场或者p城到渔村,顺便选一个就可以。之后就是农场到p城或者是学校到矿场。其中学校不能到矿场。因为会形成闭环,也就是原本这些点就已经连通了。最后结果如下:
5 V1 V/ r' ?0 e& y, T1 B
由于图片上传有问题,所有图片都在附件中

1 R% P: V$ n# Y1 {7 Z8 p; t9 I1 [2 R: G0 K- @5 I

最小生成树.docx

902.61 KB, 下载次数: 0, 下载积分: 体力 -2 点

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-9-25 09:39 , Processed in 1.606433 second(s), 52 queries .

回顶部