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

Leetcode 3613. Minimize Maximum Component Cost

  • Leetcode 3613. Minimize Maximum Component Cost
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3613. Minimize Maximum Component Cost

1. 解题思路

这一题思路上就是一个DSU的思路,我们首先将所有的边按照权重进行顺序排列,然后从小到大依次进行连接,直至图上的连通区域总数小于k个,此时上一轮我们连通的边就是可以取用的最小的边。

而关于DSU的方法实现,网上实在太多了,我自己也有一篇小博客《经典算法:并查集(DSU)结构简介》作为备忘,这里就不具体展开了,有兴趣的读者自己查阅一下就行了。

2. 代码实现

给出python代码实现如下:

class DSU:def __init__(self, N):self.root = [i for i in range(N)]self.n = Ndef find(self, k):if self.root[k] != k:self.root[k] = self.find(self.root[k])return self.root[k]def union(self, a, b):x = self.find(a)y = self.find(b)if x != y:self.root[y] = xself.n -= 1returnclass Solution:def minCost(self, n: int, edges: List[List[int]], k: int) -> int:edges = sorted(edges, key=lambda x: x[2])dsu = DSU(n)ans = 0for u,v,w in edges:if dsu.n <= k:breakans = wdsu.union(u, v)return ans

提交代码评测得到:耗时123ms,占用内存65.55MB。

http://www.dtcms.com/a/277401.html

相关文章:

  • Vue文件上传实战指南
  • 深入理解 Linux 文件系统层级结构
  • Python 数据挖掘之数据探索
  • CCS-MSPM0G3507-7-模块篇-MPU6050的基本使用
  • Spring Boot 安全登录系统:前后端分离实现
  • MYSQL笔记1
  • 黑马点评系列问题之p63unlock.lua不知道怎么整
  • 嵌入式单片机开发 - Keil MDK 自定义 Output 与 Listing 输出
  • EtherCAT开源主站 SOEM 2.0 最新源码在嵌入式 Linux 下的移植与编译
  • 2025.7.13总结
  • 欧拉系统安装UKUI桌面环境
  • 无缝衔接直播流体验
  • Git Commit Message写错后如何修改?已Push的提交如何安全修复?
  • C#单例模式管理全局变量
  • 格密码–SIS问题,ISIS问题及nf-ISIS问题
  • linux中at命令的常用用法。
  • 基于关联规则优化的个性化推荐系统
  • 本地部署开源的网盘聚合工具 OpenList 并实现外部访问(Windows 版本)
  • LLM大模型微调技术全景:从IFT、SFT到RLHF、DPO与PPO强化学习
  • Python 协程(终止协程和异常处理)
  • 晋升指南-笔记
  • 登录模块的静态登录
  • 基于Redis Streams的实时消息处理实战经验分享
  • 2025湖北省信息安全管理与评估赛项一阶段技能书
  • 当外卖骑手遇上“爽提学院”:一场关于专业的蜕变
  • 电商系统未来三年趋势:体验升级、技术赋能与模式重构
  • 海豚远程控制APP:随时随地,轻松掌控手机
  • 强化学习 (11)随机近似
  • 串口A和S的含义以及RT的含义
  • 大众点评商业模式:从内容护城河到竞争熔炉