博客
关于我
算法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 中文问题
查看>>
MySQL 中日志的面试题总结
查看>>
mysql 中的all,5分钟了解MySQL5.7中union all用法的黑科技
查看>>
Mysql 中的日期时间字符串查询
查看>>
MySQL 中锁的面试题总结
查看>>
MySQL 中随机抽样:order by rand limit 的替代方案
查看>>
MySQL 为什么需要两阶段提交?
查看>>
mysql 为某个字段的值加前缀、去掉前缀
查看>>
mysql 主从
查看>>
mysql 主从 lock_mysql 主从同步权限mysql 行锁的实现
查看>>
mysql 主从互备份_mysql互为主从实战设置详解及自动化备份(Centos7.2)
查看>>
mysql 主从关系切换
查看>>
mysql 主键重复则覆盖_数据库主键不能重复
查看>>
Mysql 优化 or
查看>>
mysql 优化器 key_mysql – 选择*和查询优化器
查看>>
MySQL 优化:Explain 执行计划详解
查看>>
Mysql 会导致锁表的语法
查看>>
mysql 使用sql文件恢复数据库
查看>>
mysql 修改默认字符集为utf8
查看>>
Mysql 共享锁
查看>>