【专题】最小生成树(prim算法、kruscal算法)

news2024/11/16 10:36:23

目录

  • 一、最小生成树
  • 二、Prim算法
    • 1. 算法思想
    • 2. 例题
    • 3. 性能分析
  • 三、Kruscal算法
    • 1. 算法思想
    • 2. 例题
    • 3. 性能分析

一、最小生成树

生成树中边的权值(代价)之和最小的树。
在这里插入图片描述

二、Prim算法

1. 算法思想

  • 设N=(V,{E})是连通网,TE是N上最小生成树中边的集合;
  • Step1:令U={u},u∈V,TE={};
  • Step2:在u∈U,v∈V-U的边(u,v)∈E中找一条代价最小的边(u,v)并入TE,v并入U;
  • Step3:重复Step2,直至U=V,T={U,{TE}}是N的最小生成树;
    在这里插入图片描述

2. 例题

在这里插入图片描述
在这里插入图片描述

3. 性能分析

  • 时间复杂度:O( n 2 n^2 n2) , 与网中的边数无关;
  • 适用于求边稠密的网的最小生成树;

三、Kruscal算法

1. 算法思想

  • 最小生成树上边权值之和最小,应使树上每一条边的权值尽量小;
  • Step1:令最小生成树T的初态为只有n个顶点的非连通图T=(V,{});
  • Step2:从权值最小的边(u,v)开始,若该边依附的顶点落在TE的不同连通分量上,E=TE∪(u,v),否则选择下一条代价最小的边;
  • Step3:重复Step2,直至T所有顶点在同一连通分量上;

2. 例题

在这里插入图片描述

3. 性能分析

  • 时间复杂度:O( e*log2e );
  • 适合于求边稀疏的网的最小生成树;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1315198.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【IEEE】2区SCI,接收领域广,稳定检索47年!

重点 本期推荐 区块链是一种新兴技术,很多行业和领域都以创新方式采用了此技术,如能源、金融、媒体和娱乐以及零售等。此外,区块链作为一门新兴的交叉学科, 涉及密码学应用(加密,隐私等), 分布式…

stm32与Freertos入门(二)移植FreeRTOS到STM32中

简介 注意:FreeRTOS并不是实时操作系统,而是分时复用的,只不过切换频率很快,感觉上是同时在工作。本次使用的单片机型号为STM32F103C8T6,通过CubeMX快速移植。 一、CubeMX快速移植 1、选择芯片 打开CubeMX软件,进行…

Diva配置——Communication Tests

关联文章:CANoe.Diva生成测试用例 Diva目录 一、CANoe.Diva简介二、Communication Tests配置一、CANoe.Diva简介 CANoe.DiVa 是一种 CANoe 选项,用于对 ECU 中的诊断软件实施进行自动化测试。 可以通过CANdelaStudio制作的CDD或ODX文件,经过Diva配置自动生成测试用例和测试脚…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《基于时空注意力卷积模型的超短期风电功率预测》

这个标题描述了一种用于超短期风电功率预测的模型,该模型基于时空注意力卷积模型。下面我会逐步解读这个标题的关键词和背景: 超短期风电功率预测:风电功率预测是指根据历史风速和其他相关数据,通过建立数学模型来预测未来特定时间…

Vue学习计划-Vue2--VueCLi(四)组件传值和自定义事件

1. 组件传值 组件化编码流程: 拆分静态组件:组件要按照功能点拆分,命名不要与html元素冲突实现动态组件:考虑好数据的存放位置,数据是一个组件在用,还是一些组件在用: 一个组件在用&#xff0c…

云演ctf 你能看到我吗?

1、看题目稍微尝试不好用,看到提示的文件访问也不好用。读取文件又好像拦截了啥。 读取hint.php文件payload ctfphp://filter/convert.base64-encode/resourcehihintnt.php2、解密后又看到一个文件 有需要绕过 ctfphp://filter/convert.base64-encode/resource..…

轻量封装WebGPU渲染系统示例<45>- 材质组装流水线(MaterialPipeline)灯光、阴影、雾(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/feature/material/src/voxgpu/sample/MaterialPipelineFog.ts 当前示例运行效果: 此示例基于此渲染系统实现,当前示例TypeScript源码如下: export class MaterialPipelineFog {pr…

C语言数组刷题-----数组填充

输入一个整数 V ,输出一个长度为 10 的数组 N ,数组中的第一个元素为 V ,每个后续元素的值都为上一个元素的值的 2 倍。 例如,如果输入整数为 1 ,则数组为:1,2,4,8… 输入格式 输入一个整数 V 。输出格…

cmake多模块架构, DLL依赖编译

整体结构: 最外层的cmakelist CMakeLists.txt project(cmakeMulPackage) cmake_minimum_required(VERSION 3.17) set(CMAKE_CXX_STANDARD 11)#设置环境相关 message("set env.cmake") message("CMAKE_BUILD_TYPE is ${CMAKE_BUILD_TYPE}") …

TG-5510cb: txo高稳定性+105℃高温

TG-5510CB是一款高稳定性TCXO,可提供CMOS或限幅正弦输出,5G基站和边缘计算的额定温度为85C,需要室外安装、小型化和无风扇运行。与其他TCXO相比,实验室提供了许多改进,如低温度斜率和相位噪声。符合GR-1244-CORE地层3和…

详细教程 - 从零开发 Vue 鸿蒙harmonyOS应用 第一节

关于使用Vue开发鸿蒙应用的教程,我这篇之前的博客还不够完整和详细。那么这次我会尝试写一个更加完整和逐步的指南,从环境准备,到目录结构,再到关键代码讲解,以及调试和发布等,希望可以让大家详实地掌握这个过程。 一、准备工作 下载安装 DevEco Studio 下载地址:…

AD20-Excel创建IC类元件库

目录 准备模板AD操作 准备模板 AD操作 结果生成如下: over!!!

【教学类-06-18】20231216 (按“列”正序题)X-Y之间“加法题+题”(1页最多0-13。不考虑空格补全)

作品展示:按列排序,从小到大正序(有空格) 背景需求: 55格模板,很多幼儿都是按照“列”的方式,从上到下,从左向右完成题目的。 视觉上,两列之间间距大(给孩子…

labelme标注json文件检查标注标签(修改imageWidth,imagePath,imageHeight)

# !/usr/bin/env python # -*- encoding: utf-8 -*- #---wzhimport os import json# 这里写你自己的存放照片和json文件的路径 json_dir =rC:\Users\Lenovo\Desktop\json3 json_files = os.listdir(json_dir

广西开放大学形成性考核 平时作业 统一资料 参考

试卷代号:1293 心理学 参考试题 一、选择题(每个3分,共30分,含单选和多选,请将正确答案的字母序号填入括号中) 1.人们通常把下列图形知觉为一个连续、完整的形状,说明图形知觉遵循( )。…

(第61天)多租户架构(CDB/PDB)

背景介绍 Oracle 的 CDB 和 PDB 是 Oracle 12C 及以上版本中引入的新概念,用于管理多租户数据库环境。 Oracle 数据库是商业数据库领域中的翘楚,其强大的功能和高可靠性备受企业用户追捧。而随着云计算和大数据时代的到来,Oracle 也不断推出新的技术以适应这些变化。CDB 技…

关于自动化用例设计的思考!

为什么要设计用例? 作为质量保证(QA)人员,设计测试用例的重要性不亚于开发人员编写技术实现方案。如果实现方案设计不周,编码阶段将可能遇到许多问题;同理,如果我们未能设计测试用例,产品质量就难以得到充…

在thinkphp5.1 自定义验证规则 获取get 传递的值的时候 传递了 值 能够获取到 验证出错

控制器: public function teamDetail(){if(request()->isGet()){$team_id $this->request->get(team_id, );$this->validate->scene(teamDetail)->check($team_id);if ($this->validate->getError()) {return resultArray(lang(strval($this->vali…

基于ssm金旗帜文化培训学校网站的设计与开发论文

摘 要 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对培训学校展示信息管理混乱,出错率高,信息安全…