博客
关于我
算法C++ 面试常考算法最小生成数 Kruskal算法和Prim算法理解(第四章)
阅读量:205 次
发布时间:2019-02-28

本文共 627 字,大约阅读时间需要 2 分钟。

文章目录


造轮子博客链接



8分钟最佳视频理解Prim算法和Kruskal算法



最小生成树我的理解


一条通路将图中所有中的点连接起来 并且其权值相加具有最小之和

不存在环的一种树状结构 就是最小生成树 这是我的理解
假如一个图中一共有v个节点 最小生成树中就有v-1条线段连接
我在网上找到了一张图帮助理解最小生成树的思考
在这里插入图片描述


Kruskal算法理解


排序


其实我觉得这个算法是相比Prim更好理解的 感觉其实就是贪心的算法

首先就是我们需要对所有有权值的边进行一个排序(降序)
然后我们从权值小的开始选取 一条边一条边插入
在这里插入图片描述


插入选取


其实唯一选取条件就是 不能使当前的连接存在环 比如当前的选取的边

7到8号节点中的权值为7的边 使2号 8号 7号 6号 5号存在了一个环 树中是不允许环的存在的 所以就舍去这条边继续看下一条边是否符合条件 直到找到v-1条边结束选取 最小生成树就出来了
在这里插入图片描述


Prim算法理解


算法理解


这个算法我也不知道像什么 能不能说成贪心呢 也好像可以

我真觉得这个东西口头上讲还是讲不清楚 还是推荐大家花个8分钟把视频给看一下

就是向外延伸 然后直到所有的点都遍历完成 每次就找我们已经存在的点向外路径最短的一条 然后使人家的点纳入我们的子集中


相关习题链接


有能力的可以去冲个力扣会员 我估计下半年的时候才会冲 因为感觉冲了会员的话 就是在付费刷题了 我怕会影响到我每天学习的节奏 我先放出链接 之后如果我刷了那道题这篇博客还会补充的

在这里插入图片描述

转载地址:http://wjni.baihongyu.com/

你可能感兴趣的文章
mysql cmake 报错,MySQL云服务器应用及cmake报错解决办法
查看>>
Multiple websites on single instance of IIS
查看>>
mysql CONCAT()函数拼接有NULL
查看>>
multiprocessing.Manager 嵌套共享对象不适用于队列
查看>>
multiprocessing.pool.map 和带有两个参数的函数
查看>>
MYSQL CONCAT函数
查看>>
multiprocessing.Pool:map_async 和 imap 有什么区别?
查看>>
MySQL Connector/Net 句柄泄露
查看>>
multiprocessor(中)
查看>>
mysql CPU使用率过高的一次处理经历
查看>>
Multisim中555定时器使用技巧
查看>>
MySQL CRUD 数据表基础操作实战
查看>>
multisim变压器反馈式_穿过隔离栅供电:认识隔离式直流/ 直流偏置电源
查看>>
mysql csv import meets charset
查看>>
multivariate_normal TypeError: ufunc ‘add‘ output (typecode ‘O‘) could not be coerced to provided……
查看>>
MySQL DBA 数据库优化策略
查看>>
multi_index_container
查看>>
MySQL DBA 进阶知识详解
查看>>
Mura CMS processAsyncObject SQL注入漏洞复现(CVE-2024-32640)
查看>>
Mysql DBA 高级运维学习之路-DQL语句之select知识讲解
查看>>