博客
关于我
算法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中怎样使用case-when实现判断查询结果返回
查看>>
Mysql中怎样使用update更新某列的数据减去指定值
查看>>
Mysql中怎样设置指定ip远程访问连接
查看>>
mysql中数据表的基本操作很难嘛,由这个实验来带你从头走一遍
查看>>
Mysql中文乱码问题完美解决方案
查看>>
mysql中的 +号 和 CONCAT(str1,str2,...)
查看>>
Mysql中的 IFNULL 函数的详解
查看>>
mysql中的collate关键字是什么意思?
查看>>
MySql中的concat()相关函数
查看>>
mysql中的concat函数,concat_ws函数,concat_group函数之间的区别
查看>>
MySQL中的count函数
查看>>
MySQL中的DB、DBMS、SQL
查看>>
MySQL中的DECIMAL类型:MYSQL_TYPE_DECIMAL与MYSQL_TYPE_NEWDECIMAL详解
查看>>
MySQL中的GROUP_CONCAT()函数详解与实战应用
查看>>
MySQL中的IO问题分析与优化
查看>>
MySQL中的ON DUPLICATE KEY UPDATE详解与应用
查看>>
mysql中的rbs,SharePoint RBS:即使启用了RBS,内容数据库也在不断增长
查看>>
mysql中的undo log、redo log 、binlog大致概要
查看>>