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

Prim算法:经过图中所有节点的最短路径

题目链接:53. 寻宝(第七期模拟笔试)

#include<bits/stdc++.h>
using namespace std;// v为节点数量,e为边数量
int v, e;// 最小生成树
void prim(vector<vector<int>>& adj) {vector<int> dist(v+1, INT_MAX); // 节点到生成树的距离,初始化为最大距离vector<int> used(v+1, 0); // 是否已经加入到生成树中,0表示没加入,1表示加入vector<int> pre_node(v+1, 0); // 生成树中节点i的前驱节点,0表示没有前驱// 把序号为1的节点加入生成树,在生成树中的节点到生成树的距离为0dist[1] = 0; for (int i = 1; i <= v; ++i) {// 找到生成树距离最小的节点加入生成树int closest_node_idx = -1;for (int j = 1; j <= v; ++j) {if (!used[j] && (closest_node_idx == -1 ||  dist[j] < dist[closest_node_idx]) ) {closest_node_idx = j;}}used[closest_node_idx] = 1;// 更新节点到生成树的距离并保存其前驱节点,方便最后计算最短路径for (int k = 1; k <= v; ++k) {if (!used[k] && dist[k] > adj[closest_node_idx][k] ) {dist[k] = adj[closest_node_idx][k];pre_node[k] = closest_node_idx;}}}int res = 0;// 从编号为2的节点开始算最短路径,因为第1个节点没有前驱节点(没有向前的边)for (int i = 2; i <= v; ++i) {res += adj[i][pre_node[i]];}printf("%d\n", res);}int main() {while (cin>>v>>e) {int v1, v2, val;std::vector<vector<int>> adj(v+1, vector<int>(v+1, INT_MAX));for (int i = 0; i < e; i++) {scanf("%d%d%d", &v1, &v2, &val);adj[v1][v2] = val;adj[v2][v1] = val;}prim(adj);}return 0;
}

相关文章:

Prim算法:经过图中所有节点的最短路径

题目链接&#xff1a;53. 寻宝&#xff08;第七期模拟笔试&#xff09; #include<bits/stdc.h> using namespace std;// v为节点数量&#xff0c;e为边数量 int v, e;// 最小生成树 void prim(vector<vector<int>>& adj) {vector<int> dist(v1, I…...

Linux 信号捕捉函数 signal sigaction

signal函数 #include <signal.h> typedef void (*sighandler_t)(int); sighandler_t signal(int signum, sighandler_t handler); 功能&#xff1a;设置某个信号的捕捉行为 参数&#xff1a; -signum&#xff1a;要捕捉的信号 handler&#xff1a;对捕捉到的信号怎么处理…...

StarRocks操作笔记

最近在使用starRocks&#xff0c;记录一些临时的操作技巧&#xff0c;防止遗忘。 1. 创建表 CREATE TABLE IF NOT EXISTS ODS.T_TEST( pk_day date, pool_address string, code string comment 唯一主键, test1 string, test2 string, test3 string, pk_year varchar(4), pk_m…...

Linux的ls -ld命令产生的信息怎么看

2023年9月24日&#xff0c;周日上午 目录 ls -ld列出的目录或文件的信息含义文件硬链接什么是文件硬链接为什么新建目录的文件硬链接为2举例说明例一例二例三 ls -ld列出的目录或文件的信息含义 第一个字符表示文件类型: d: 目录 -: 普通文件 l: 软链接 b: 块设备文件 c:…...

Linux- 内存映射文件(Memory-Mapped File)

内存映射文件&#xff08;Memory-Mapped File&#xff09;是⼀种将文件内容映射到内存中的机制&#xff0c;允许程序直接访问文件数据&#xff0c;就好像这些数据已经被加载到了内存⼀样。这个机制允许文件的内容被映射到⼀个进程的地址空间&#xff0c;从而允许程序以⼀种更高…...

李航老师《统计学习方法》第五章阅读笔记

决策树&#xff08;decision tree&#xff09;是一种基本的分类与回归方法。本章主要讨论用于分类的决策树。决策树模型呈树形结构&#xff0c;在分类问题中&#xff0c;表示基于特征对实例进行分类的过程。 以下是关于分类决策树的一些基本概念和特点&#xff1a; 树形结构&am…...

iOS16新特性:实时活动-在锁屏界面实时更新APP消息 | 京东云技术团队

简介 之前在 《iOS16新特性:灵动岛适配开发与到家业务场景结合的探索实践》 里介绍了iOS16新的特性&#xff1a;实时更新&#xff08;Live Activity&#xff09;中灵动岛的适配流程&#xff0c;但其实除了灵动岛的展示样式&#xff0c;Live Activity还有一种非常实用的应用场景…...

使用 Elasticsearch、OpenAI 和 LangChain 进行语义搜索

在本教程中&#xff0c;我将引导您使用 Elasticsearch、OpenAI、LangChain 和 FastAPI 构建语义搜索服务。 LangChain 是这个领域的新酷孩子。 它是一个旨在帮助你与大型语言模型 (LLM) 交互的库。 LangChain 简化了与 LLMs 相关的许多日常任务&#xff0c;例如从文档中提取文本…...

NIFI集群_队列Queue中数据无法清空_清除队列数据报错_无法删除queue_解决_集群中机器交替重启删除---大数据之Nifi工作笔记0061

今天发现,有两个处理器,启动以后,数据流不过去,后来,锁定问题在,queue队列上面,因为别的队列都可以通过,右键,empty queue清空,就是 这个队列不行,这个队列无法被删除,至于为什么导致这样的, 猜测是因为之前,流程设计好以后,队列没有设置背压,也没有设置队列中的内容大小和fl…...

leetcode20. 有效的括号 [简单题]

题目 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型…...

ubuntu20.04下源码编译colmap

由于稠密重建需要CUDA&#xff0c;因此先安装CUDA&#xff0c;我使用的是3050GPU&#xff0c;nvidia-smi显示最高支持CUDA11.4。 不要用sudo apt安装&#xff0c;版本较低&#xff0c;30系显卡建议安装CUDA11.0以上&#xff0c;这里安装了11.1版本。 下载&#xff1a; cuda_1…...

Jumpserver堡垒机

一、堡垒机概述 1、堡垒机的基本概念 堡垒机也是一台服务器&#xff0c;在一个特定的网络环境下&#xff0c;为了保障网络和数据不受来自外部和内部用户的入侵和破坏&#xff0c;而运用各种技术手段实时收集、监控网络环境中每一个组成部分&#xff08;服务器&#xff09;的系…...

第一百五十三回 如何实现滑动窗口

文章目录 概念介绍实现方法示例代码 我们在上一章回中介绍了自定义组件实现游戏摇杆相关的内容&#xff0c;本章回中将介绍 如何实现滑动窗口.闲话休提&#xff0c;让我们一起Talk Flutter吧。 概念介绍 我们在本章回中介绍的滑动窗口表示在屏幕底部向上滑动时弹出一个窗口&a…...

Oracle 12c自动化管理特性的新进展:自动备份、自动恢复和自动维护功能的优势|oracle 12c相对oralce 11g的新特性(3)

一、前言: 前面几期讲解了oracle 12c多租户的使用、In-Memory列存储来提高查询性能以及数据库的克隆、全局数据字典和共享数据库资源的使用 今天我们讲讲oracle 12c的另外的一个自动化管理功能新特性:自动备份、自动恢复、自动维护的功能 二、自动备份、自动恢复、自动维护…...

Redis——Jedis中hash类型使用

hset 和 hget hset可以逐一添加key和value&#xff0c;也可以通过map类型来直接添加多组fields 而hget则返回string类型&#xff0c;如果元素不存在则返回null private static void hsetAndHget(Jedis jedis) {jedis.flushAll();jedis.hset("key", "f1"…...

肖sir__项目实战讲解__004

项目实战讲解 一、项目的类型 金融类&#xff1a; 保险(健康险理财险)、证券、基金(股票型基金、混合型基金、指数型基金、债券型基金、 天天基金网&#xff08;ETF基金、货币型基金、量化基金)、银行、贷款、信用卡、外汇、二元期权、期货原油、blockchain、 数字货币、黄金白…...

数据库数据恢复-ORACLE常见故障有哪些?恢复数据的可能性高吗?

ORACLE数据库常见故障&#xff1a; 1、ORACLE数据库无法启动或无法正常工作。 2、ORACLE数据库ASM存储破坏。 3、ORACLE数据库数据文件丢失。 4、ORACLE数据库数据文件部分损坏。 5、ORACLE数据库DUMP文件损坏。 ORACLE数据库数据恢复可能性分析&#xff1a; 1、ORACLE数据库无…...

合规性管理如何帮助产品团队按时交付?

成功的产品和产品发布背后通常需要经过一个涉及多个监督机构、多功能团队和利益相关者的复杂流程。在组织的治理、风险管理和合规性&#xff08;GRC&#xff09;框架下&#xff0c;产品团队不仅需要追求市场创新&#xff0c;还需要确保符合所有适用的法规、标准和合同要求。由于…...

从平均数到排名算法

平均数用更少的数字&#xff0c;概括一组数字。属于概述统计量、集中趋势测度、位置测度。中位数是第二常见的概述统计量。许多情况下比均值更合适。算术平均数是3中毕达哥拉斯平均数之一&#xff0c;另外两种毕达哥拉斯平均数是几何平均数和调和平均数。 算术平均 A M 1 n ∑…...

如何使用ESP8266微控制器和Nextion显示器为Home Assistant展示温度传感器和互联网天气预报

第一部分&#xff1a;引言与项目概述 在智能家居领域&#xff0c;实时监控和显示环境数据已经成为了一个热门的话题。无论是室内温度、室外温度&#xff0c;还是游泳池的温度&#xff0c;都可以通过各种传感器轻松获取。但如何将这些数据以直观、美观的方式展现出来呢&#xf…...

中小卖家最怕买“大而全”,真正需要的是“刚刚好”的自动化方案

很多中小卖家一听到“AI自动化”“全链路智能体”这些词&#xff0c; 心里会先紧张一下。 不是不感兴趣&#xff0c; 而是怕另一个问题&#xff1a; 看起来很强&#xff0c;但太大了&#xff1b; 功能很多&#xff0c;但太重了&#xff1b; 概念很全&#xff0c;但不一定适合自…...

马斯克最新对话:AI 毁灭人类的概率有 20%,但它将创造一个没有钱的“全民高收入”时代

“我宁愿看到结局&#xff0c;也不愿无聊老去。”编译 | 王启隆来源 | youtu.be/N5KCm_55xeQ出品丨AI 科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;在此前结束的 2026 Abundance Summit 上&#xff0c;X奖基金会创始人彼得戴曼迪斯&#xff08;Peter Diamandis&…...

AI赋能开发:让快马智能生成telnet会话录制与自动化回放测试工具

最近在做一个网络设备的自动化测试项目&#xff0c;需要频繁通过telnet进行配置验证。传统的手工测试效率太低&#xff0c;于是尝试用AI辅助开发一个智能化的telnet会话录制与回放工具。整个过程在InsCode(快马)平台上完成&#xff0c;体验非常流畅。 需求分析 首先明确工具需要…...

XUnity.AutoTranslator:为Unity游戏开启多语言世界的智能钥匙

XUnity.AutoTranslator&#xff1a;为Unity游戏开启多语言世界的智能钥匙 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 当游戏语言成为障碍&#xff1a;一个翻译插件的诞生背景 你是否曾经遇到过这样的…...

分享稳定可靠的TMC5160、TMC5130高性能步进电机驱动代码,支持级联,简单易用,附送原理图

TMC5160、TMC5130高性能步进电机驱动代码 代码都已长时间验证&#xff0c;稳定可靠运行&#xff01; 图里资料就是到手资料 简介&#xff1a; 德国TMC步进电机驱动代码 送你OrCAD或者AD版本原理图 自己整个重新写的代码&#xff0c;注释详细 支持多个TMC5160级联 调用很简单&a…...

【数据结构与算法】第29篇:红黑树原理与C语言模拟

一、红黑树的定义1.1 五大性质红黑树是一种自平衡二叉查找树&#xff0c;每个节点增加一个颜色属性&#xff08;红或黑&#xff09;&#xff0c;必须满足&#xff1a;性质说明性质1每个节点是红色或黑色性质2根节点是黑色性质3所有叶子节点&#xff08;NIL&#xff09;是黑色性…...

高效智能激活解决方案:KMS_VL_ALL_AIO如何一键解决Windows与Office授权难题

高效智能激活解决方案&#xff1a;KMS_VL_ALL_AIO如何一键解决Windows与Office授权难题 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 你是否曾因Windows突然弹出激活提醒而中断工作&#xff1…...

深度解析WaveTools:鸣潮游戏性能优化与数据分析的专业工具

深度解析WaveTools&#xff1a;鸣潮游戏性能优化与数据分析的专业工具 【免费下载链接】WaveTools &#x1f9f0;鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools WaveTools作为一款专为《鸣潮》游戏设计的开源工具箱&#xff0c;通过帧率解锁、画质…...

5个步骤安全使用YimMenu:GTA5 DLL注入入门指南

5个步骤安全使用YimMenu&#xff1a;GTA5 DLL注入入门指南 【免费下载链接】YimMenu YimMenu, a GTA V menu protecting against a wide ranges of the public crashes and improving the overall experience. 项目地址: https://gitcode.com/GitHub_Trending/yi/YimMenu …...

设备预测性维护模型构建方法

构建设备预测性维护模型需要结合数据采集、算法选择和实际应用场景。以下是核心步骤&#xff1a;数据采集与预处理 设备运行数据是模型的基础&#xff0c;需通过传感器、SCADA系统或IoT设备采集振动、温度、电流等参数。原始数据通常包含噪声&#xff0c;需进行滤波、归一化和缺…...