【图论笔记】克鲁斯卡尔算法(Kruskal)求最小生成树

【图论笔记】克鲁斯卡尔算法(Kruskal)求最小生成树

适用于

克鲁斯卡尔适合用来求边比较稀疏的图的最小生成树

简记:

将边按照升序排序,选取n-1条边,连通n个顶点。

添加一条边的时候,如何判断能不能添加这条边?(添加进来之后,会不会构成回路)

看标记,

和原来的标记不一样,就可以加入,

加入之后将他们的标记修改为一样的。

图解

第一步:创建一个连通图,并且给每个顶点都标记上不同的颜色

第二步:选取边<A,C>,选完之后C的颜色要和A相同

第三步:加入边<D,F>,将F的颜色改为D的蓝色

第四步:加入边<B,E>,将E改为紫色

第五步:添加边<C,F>,将F相连的节点改为绿色(包括它自己)

第六步:<A,D>不能加入,因为A和D的颜色一样。加入边<B,C>,将原来和B相连的节点的颜色都改为绿色。完

代码正在研究

相关推荐
lqjun08276 分钟前
Pytorch实现常用代码笔记
人工智能·pytorch·笔记
L_cl6 分钟前
【Python 算法零基础 3.递推】
算法
int型码农19 分钟前
数据结构第七章(四)-B树和B+树
数据结构·b树·算法·b+树
云海听雷42 分钟前
C语言中字符串函数的详细讲解
c语言·笔记·学习
先做个垃圾出来………1 小时前
汉明距离(Hamming Distance)
开发语言·python·算法
wb1891 小时前
Linux远程连接服务
linux·运维·服务器·笔记
烧火大爷1 小时前
现代计算机图形学Games101入门笔记(三)
笔记
人类恶.1 小时前
C 语言学习笔记(数组)
c语言·笔记·学习
夏季疯1 小时前
学习笔记:黑马程序员JavaWeb开发教程(2025.4.7)
java·笔记·学习
小羊在奋斗2 小时前
【LeetCode 热题 100】二叉树的最大深度 / 翻转二叉树 / 二叉树的直径 / 验证二叉搜索树
算法·leetcode·职场和发展