首页 > 其他分享 >最小生成树Prim

最小生成树Prim

时间:2025-01-20 16:59:36浏览次数:1  
标签:结点 Prim 加入 int 边权 最小 生成

该算法的基本思想是从一个结点开始,不断加点.每次要选择距离最小的一个结点,以及用新的边更新其他结点的距离。

从任意一个结点开始,将结点分成两类:已加入的,未加入的。
每次从未加入的结点中,找一个与已加入的结点之间边权最小值最小的结点
然后将这个结点加入,并连上那条边权最小的边。
更新所有点到最小生成树的最小边距。
重复 n-1 次即可。

memset(f, 10000000000, sizeof(f));
int dis[N];
for (int i = 1; i <= n; i++)
{
    if (f[i][star])
        dis[i] = f[i][star]; // 每个点到最小生成树的最小边距(没有联系dis[i]就为无穷大
}
dis[star]=0;
int ans = 0;
vis[star] = 1;
for (int i = 1; i < n; i++)
{
    int k = 0;
    int MIN = inf;
    for (int j = 1; j <= n; j++) // 找到最小的边
    {
        if (!vis[j] && (MIN < dis[j])) // 不在生成树中且有联系的最小边
        {
            k = j;
            MIN = dis[j];
        }
    }
    ans += dis[k];
    vis[k] = 1;                  // 记录已在最小生成树中
    for (int j = 1; j <= n; j++) // 更新所有点到最小生成树的最小距离
    {
        if (f[j][k] < dis[j])
            dis[j] = f[j][k];
    }
}

这是大体上的思路实际上可以用优先队列优化

标签:结点,Prim,加入,int,边权,最小,生成
From: https://www.cnblogs.com/-include-lmt/p/18681775

相关文章

  • Spring Boot + Apache POI 实现 Excel 导出:BOM物料清单生成器(支持中文文件名、样式美
    目录引言ApachePOI操作Excel的实用技巧1.合并单元格操作2.设置单元格样式1.创建样式对象2.设置边框3.设置底色4.设置对齐方式5.设置字体样式6.设置自动换行7.应用样式到单元格3.定位和操作指定单元格4.实现标签-值的形式5.列宽设置1.设置单个列宽2.......
  • AI大模型-提示工程学习笔记9-生成知识提示
    卷首语:我所知的是我自己非常无知,所以我要不断学习。写给AI入行比较晚的小白们(比如我自己)看的,大神可以直接路过无视了。有一种改进大语言模型(LLM)推理能力的技术:生成知识作为提示的一部分。这种方法由Liu等人(2022)提出,旨在通过让模型先生成相关知识,再将这些知识整合到推理过......
  • Linux平台生成AWR报告
    在Linux平台上生成AWR(AutomaticWorkloadRepository)报告通常是指针对Oracle数据库的操作。AWR报告是Oracle数据库性能诊断的一个重要工具,它可以帮助DBA分析数据库在一段时间内的性能表现。以下是生成AWR报告的一般步骤:1.确认Oracle数据库环境确保Oracle数据库已经安装,并且......
  • Python 列表推导和生成器表达式的区别点
    列表推导(ListComprehensions)和生成器表达式(GeneratorExpressions)在Python中有着相似的语法,但它们的行为和用途有所不同。以下是两者之间的主要区别:1.内存使用列表推导:创建一个完整的列表,所有元素都会被立即计算并存储在内存中。squares_list=[x**2forxinrange(1......
  • 如何修改织梦(DedeCMS)网站地图生成模板以优化SEO
    修改织梦(DedeCMS)的网站地图生成模板是优化网站SEO的重要步骤。以下是详细的指南,帮助您顺利完成这一任务:备份现有模板:在进行任何更改之前,请确保对当前使用的网站地图模板进行完整备份。这可以防止意外错误导致网站地图无法正常生成。登录织梦后台管理系统:进入织梦网站的......
  • 使用贪心算法解决最小生成树问题
    大家好,我是V哥。今天跟大家聊一聊贪心算法问题,因为遇到这个面试题,问贪心算法解决最小生成树是怎么设计的,以及如何应用?好家伙,这面试官一上来就不按套路出牌,直接上难度,如果你遇到这样的问题,该怎么办呢。下面V哥来详细聊一聊。贪心算法解决最小生成树问题的一般步骤一、解决思......
  • AIGC视频生成明星——Emu Video模型
    大家好,这里是好评笔记,公主号:Goodnote,专栏文章私信限时Free。本文详细介绍Meta的视频生成模型EmuVideo,作为Meta发布的第二款视频生成模型,在视频生成领域发挥关键作用。......
  • 以太网帧的最小长度和最大长度
    以太网帧的长度范围是有明确规定的。以太网帧的最小长度是64字节,最大长度是1518字节。‌最小长度‌:64字节。这个长度包括了14字节的帧头(目的MAC地址6字节、源MAC地址6字节、类型/长度字段2字节)、46字节的有效载荷(数据部分)和4字节的帧校验序列(FCS)。以太网帧之所以设置最小长度,是......
  • 在传统以太网中,为什么要有最小帧长度和最大帧长度的限制?(转)
    在传统以太网中,为什么要有最小帧长度和最大帧长度的限制?以太网(IEEE802.3)帧格式:1、前导码:7字节0x55,一串1、0间隔,用于信号同步2、帧起始定界符:1字节0xD5(10101011),表示一帧开始3、DA(目的MAC):6字节4、SA(源MAC):6字节5、类型/长度:2字节,0~1500保留为长度域值,1536~65535保留......
  • 织梦网站生成首页慢及504错误的解决方法
    织梦CMS生成首页慢及504错误通常是由于服务器资源不足、程序逻辑复杂或存在死循环等原因造成的。为了提高生成速度并解决504错误,您可以采取以下措施:优化服务器资源配置:检查服务器的CPU、内存和磁盘I/O使用情况,确保有足够的资源来处理生成请求。如果发现资源占用过高,考虑升级......