尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Kimi    LeetCode 3600. 升级后最大生成树稳定性 Java实现
LeetCode 3600. 升级后最大生成树稳定性 — Java 实现题目分析核心问题找出一个生成树使其稳定性即树中最小边强度最大化。每条可选边must0最多可升级一次强度翻倍最多使用 k 次升级。关键观察稳定性具有单调性——如果稳定性 x 可行则所有 y x 也可行。因此可以用二分查找 并查集解决。解题思路步骤 说明预处理 将所有必选边must1加入并查集检查是否成环同时记录必选边中最小强度 mn连通性检查 将所有边加入并查集若连通分量 1返回 -1二分查找 在 [1, mn] 范围内二分答案 limcheck(lim) 先加入所有强度 ≥ lim 的边再用升级次数连接强度 ≥ lim/2 的边升级后翻倍check(lim) 的逻辑1. 将所有 s lim 的边直接加入并查集这些边不升级就能满足要求2. 剩余连通分量需要用升级来连接3. 对于每条可选边若 s * 2 lim升级后能满足则用一次升级加入4. 最多用 k 次升级最终检查是否只剩 1 个连通分量Java 代码javaclass UnionFind {int[] p, size;int cnt;UnionFind(int n) {p new int[n];size new int[n];cnt n;for (int i 0; i n; i) {p[i] i;size[i] 1;}}int find(int x) {if (p[x] ! x) {p[x] find(p[x]);}return p[x];}boolean union(int a, int b) {int pa find(a), pb find(b);if (pa pb) return false;if (size[pa] size[pb]) {p[pb] pa;size[pa] size[pb];} else {p[pa] pb;size[pb] size[pa];}cnt--;return true;}}class Solution {int n;int[][] edges;int k;private boolean check(int lim) {UnionFind uf new UnionFind(n);// Step 1: 直接加入强度 lim 的边不升级for (int[] e : edges) {int u e[0], v e[1], s e[2];if (s lim) {uf.union(u, v);}}// Step 2: 用升级次数连接剩余部分int rem k;for (int[] e : edges) {int u e[0], v e[1], s e[2];// 升级后强度翻倍若翻倍后 lim 则可以用来连接if (s * 2 lim rem 0) {if (uf.union(u, v)) {rem--;}}}return uf.cnt 1;}public int maxStability(int n, int[][] edges, int k) {this.n n;this.edges edges;this.k k;UnionFind uf new UnionFind(n);int mn (int)1e6;// 处理必选边for (int[] e : edges) {int u e[0], v e[1], s e[2], must e[3];if (must 1) {mn Math.min(mn, s);// 必选边成环无法构成生成树if (!uf.union(u, v)) {return -1;}}}// 检查整个图是否连通for (int[] e : edges) {uf.union(e[0], e[1]);}if (uf.cnt 1) {return -1;}// 二分查找最大稳定性int l 1, r mn;while (l r) {int mid (l r 1) 1;if (check(mid)) {l mid;} else {r mid - 1;}}return l;}}复杂度分析指标 复杂度时间 O((m \times \alpha(n) n) \times \log M)空间 O(n)其中 m 为边数n 为节点数M 为最大边强度\alpha 为阿克曼函数的反函数并查集近似常数。关键点1. 二分上界 mn必选边中的最小强度是答案的上界因为必选边不能升级生成树稳定性不可能超过最弱的必选边。2. 升级条件 s * 2 lim升级后强度翻倍若翻倍后仍小于 lim则这条边即使升级也无法满足稳定性要求。3. 并查集路径压缩 按秩合并保证每次操作接近 O(1)。下载文件: [leetcode_3600.java](sandbox:///mnt/agents/output/leetcode_3600.java)
RELATED

相关推荐

AI协作效率陷阱:多模型协同的挑战与优化

AI协作效率陷阱:多模型协同的挑战与优化

1. 项目概述:AI协作中的效率陷阱斯坦福大学最新研究发现,当多个GPT-5.4模型协同工作时,其综合判断准确率会出现戏剧性下降——从单模型的100%暴跌至23%。这一现象揭示了当前AI科研团队在构建多智能体系统时普遍存在的认知盲区。作为长期跟踪大…

📅 2026/7/27 2:33:25
AI提效到底有多少?3个真实项目实测

AI提效到底有多少?3个真实项目实测

1. 引言 2025年,AI编程助手已从“玩具”演变为“生产力工具”。但一个核心问题始终悬而未决:AI到底能提效多少? 是营销号口中的“10倍效率”,还是实际落地时的“聊胜于无”?为了得到真实答案,我选取了3个不…

📅 2026/7/20 2:41:21
AI Agent邮箱系统:自动化邮件处理与智能响应实践

AI Agent邮箱系统:自动化邮件处理与智能响应实践

1. AI Agent邮箱系统概述在自动化办公和智能客服领域,AI Agent邮箱系统正在改变传统邮件处理方式。与普通邮箱只能被动接收邮件不同,这类系统赋予了邮件处理智能化的能力。我最近在实际项目中部署了一套AI Agent邮箱解决方案,实测下来发现它能…

📅 2026/8/21 0:12:06
MORE NEWS

更多资讯

📰

Jackett 种子站代理搜索:一个入口搜遍 700 个站,30 秒跑通

Jackett 种子站代理搜索:一个入口搜遍 700 个站,30 秒跑通 【免费下载链接】Jackett API Support for your favorite torrent trackers 项目地址: https://gitcode.com/GitHub_Trending/ja/Jackett 你正用 Sonarr 或 Radarr 管着媒体库&#xff0…

📰

ArduPilot飞控系统完整指南:一套代码如何自主驾驭5类无人平台?

ArduPilot飞控系统完整指南:一套代码如何自主驾驭5类无人平台? 【免费下载链接】ardupilot ArduPlane, ArduCopter, ArduRover, ArduSub source 项目地址: https://gitcode.com/GitHub_Trending/ar/ardupilot ArduPilot 是一款开源的飞控系统&…

📰

SystemInformer完整入门教程:5个实战技巧快速定位Windows资源占用与文件锁定

SystemInformer完整入门教程:5个实战技巧快速定位Windows资源占用与文件锁定 【免费下载链接】systeminformer A free, powerful, multi-purpose tool that helps you monitor system resources, debug software and detect malware. Brought to you by Winsider Se…

📰

CesiumJS体素渲染如何实现:从体积数据到实时可视化的完整实践指南

CesiumJS体素渲染如何实现:从体积数据到实时可视化的完整实践指南 【免费下载链接】cesium An open-source JavaScript library for world-class 3D globes and maps :earth_americas: 项目地址: https://gitcode.com/GitHub_Trending/ce/cesium 很多三维可视…

📰

Web端开源ER图工具选型:三款实战推荐

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

基于MATLAB的MIMO-OFDM仿真程序解析:从发射链路到误码率曲线

简介:这套基于MATLAB实现的MIMO-OFDM仿真程序,面向通信工程与信号处理方向的初学者和研究人员,是理解多天线正交频分复用系统原理及仿真的实用资料。压缩包共31个文件,含15个m函数文件(完成信道建模、调制解调、OFDM收…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬