当前位置: 首页 > news >正文

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

代码正在研究

http://www.lryc.cn/news/256510.html

相关文章:

  • oops-framework框架 之 多语言设置文本、精灵和骨骼动画
  • 阿里云SLB的使用总结
  • Python-pdf工具自制(合并、拆分、删除)
  • 23.12.9 《CLR via C#》 笔记7
  • input、el-input输入框输入规则
  • Qt优秀开源项目之十九:跨平台记事本Notes
  • [足式机器人]Part4 南科大高等机器人控制课 Ch03 Operator View of Rigid-Body Transformation
  • SpringBoot项目静态资源默认访问目录
  • xtu oj 1255 勾股数
  • 【ArcGIS Pro微课1000例】0051:创建数据最小几何边界范围(点、线、面数据均可)
  • Oracle 怎樣修改DB_NAME
  • git标签的管理与思考
  • ESP32网络编程-OTA方式升级固件(基于Arduino IDE)
  • 力扣-151. 反转字符串中的单词
  • VSCode Keil Assintant 联合开发STM32
  • 华为交换机基本配置
  • 每天一个Linux命令 -- (7)more命令
  • JUnit 之初体验
  • 【前端设计模式】之适配器模式
  • 【数据结构】循环队列
  • Docker的资源控制
  • SpringBoot 自动装配原理详解
  • 深度探索Linux操作系统 —— 构建initramfs
  • 使用cmake构建Qt6.6的qt quick项目,添加应用程序图标的方法
  • VUE宝典之vue-dialog使用
  • AWTK 串口屏开发(1) - Hello World
  • 鸿蒙Harmony开发初探
  • 【MySQL语言汇总[DQL,DDL,DCL,DML]以及使用python连接数据库进行其他操作】
  • 解决方案:Mac 安装 pip
  • 【恋上数据结构】前缀树 Tire 学习笔记