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

算法案例精讲:连接所有点的最小费用

我们先来看题目描述:

给你一个 points 数组,表示 2D 平面上的一些点,其中 points[i] = [xi, yi] 。 连接点 [xi, yi] 和点 [xj, yj] 的费用为它们之间的 曼哈顿距离 :|xi - xj| + |yi - yj| ,其中 |val| 表示 val 的绝对值。 请你返回将所有点连接的最小总费用。只有任意两点之间 有且仅有 一条简单路径时,才认为所有点都已连接。

示例 1:

输入:points = [[0,0],[2,2],[3,10],[5,2],[7,0]] 输出:20 解释:

我们可以按照上图所示连接所有点得到最小总费用,总费用为 20 。

注意到任意两个点之间只有唯一一条路径互相到达。

示例 2:

输入:points = [[3,12],[-2,5],[-4,1]] 输出:18

示例 3:

输入:points = [[0,0],[1,1],[1,0],[-1,1]] 输出:4

示例 4:

输入:points = [[-1000000,-1000000],[1000000,1000000]] 输出:4000000

示例 5:

输入:points = [[0,0]] 输出:0

题解:Kruskal 算法需要用到 Union-Find 并查集算法,因为生成的树不能包含环,而并查集可以用来判环。 对于添加的某条边,如果该边的两个节点本来就在同一连通分量里,那么添加这条边会产生环;

反之,如果该边的两个节点不在同一连通分量里,则添加这条边不会产生环。 为了得到的这棵生成树是权重和最小的,用到了贪心思路: 将所有边按照权重从小到大排序,从权重最小的边开始遍历,如果这条边和 mst 中的其它边不会形成环,则这条边是最小生成树的一部分,将它加入 mst 集合;否则,这条边不是最小生成树的一部分,不要把它加入 mst 集合。

http://www.jsqmd.com/news/955025/

相关文章:

  • QQ空间导出助手:一键永久备份你的青春数字记忆
  • 计算机毕业设计之基于Java的社区医院系统的设计与实现
  • 闲置电视盒子如何变身全能Linux服务器?Armbian改造实战指南
  • 影刀RPA店群自动化教程:Python协同流程版本管理与多分支协作开发实战
  • 程控交换机电脑话务员技术解析:从DTMF到Asterisk实现
  • PCB封装高效提取:告别手动复制,掌握EDA工具批量提取技巧
  • 解锁毕业论文创作新思路:paperxie 分层式 AI 写作,击破应届毕业生写稿各类痛点
  • 从电吹风拆解到MCU智能控制:硬件工程师的电路设计实战解析
  • 抖音批量下载神器:3分钟搞定无水印内容批量采集
  • N皇后遗传算法实战:Python手写GA求解100皇后
  • FPGA片上逻辑分析仪(ELA)原理与高云GAO实战:从信号捕获到波形分析
  • 遗传算法工程化实战:编码、适应度与算子协同三要素
  • 鸣潮自动化工具终极指南:5分钟快速上手游戏智能辅助
  • Office 2010 Word下可运行的VSTO Ribbon插件完整工程包(含文档级加载项与Excel兼容文件)
  • 我根据你的详细需求规范,为你扩写这篇教程文章。以下是完整版本:
  • 图像风格转换的‘注意力’玄学:拆解CUT论文中对比学习如何教会AI‘抓重点’
  • ChatGPT国内镜像站深度横评:工程师视角下的安全使用与效率提升指南
  • 字节开源王炸Bernini!轻松拿捏各类视频编辑任务
  • 2026 年北京脚手架及建筑周转器材租赁相关经营主体整理汇总 - 海棠依旧大
  • 软考 系统架构设计师历年真题集萃(274)
  • CCKS2021中文地址语义匹配实战包:含双阶段训练数据、可运行代码与预训练模型
  • 别再死记ResNet结构图了!用PyTorch代码逐行拆解34层网络(附参数表对照)
  • 2026 曲靖防水补漏三家品牌横向测评:厨卫屋面地下室修缮哪家靠谱?吉修匠 99.8 分五星稳居榜首 - 吉修匠
  • C/C++实现银行家算法:从死锁避免到并发资源调度实战
  • Pekeris分层波导中声传播损失的MATLAB波数积分仿真工具(含多图可视化与核函数分析)
  • 计算机毕业设计之基于Spring Boot的天津渤海善行帮扶服务平台的设计与实现
  • Win11 右下角点不动、提示需新应用打开链接?一条命令搞定操作中心故障
  • 如何免费下载Steam创意工坊海量壁纸:3步搞定Wallpaper Engine壁纸下载器
  • CTP 回报与天勤 get_order 查询怎么对照
  • OpenCore Legacy Patcher:让老款Mac重获新生的终极指南,支持最新macOS系统