【图论笔记】克鲁斯卡尔算法(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相连的节点的颜色都改为绿色。完

代码正在研究

相关推荐
志尊宝4 小时前
Vue3 零基础每日笔记(009):watch 侦听器——数据一变就“做事“
vue.js·笔记·缓存
hansang_IR4 小时前
【题解】P4454 [CQOI2018] 破解D-H协议
c++·算法·密码学·数论
梓䈑4 小时前
【动态规划系列】路径问题、子数组 和 子序列问题、背包问题
c++·算法·动态规划
噜~噜~噜~4 小时前
操作系统笔记-3.1.1.4 (选修)覆盖与交换
笔记·操作系统
aqiu1111114 小时前
【数位 DP / 记忆化搜索】蓝桥云课 - 光轨区的 AI 数 题解
c++·算法·蓝桥杯·数位dp
志尊宝4 小时前
Vue3 零基础每日笔记(011):生命周期钩子——在正确的时间做正确的事
javascript·vue.js·笔记
prog_61034 小时前
【笔记】用cursor手搓cursor(十)
人工智能·笔记·大语言模型·agent
地平线开发者4 小时前
Horizon J6m 部署 YOLOv8s INT8 精度下降问题排查记录
算法
橘子汽水1684 小时前
Leetcode 200,994岛屿数量,腐烂的橘子
数据结构·算法·leetcode
浔溺6 小时前
al+大数据每日学习笔记36
大数据·笔记·学习