算法笔试模拟题精解之“最短路”

简介: 做这道题的思路是,假设一开始没有道路,只有n个水库。建立一个连通图,初始状态连通图中只有水库1一个结点。然后将逐步将道路加入连通图中,道路加入连通图的条件是道路两端的水库至少有一个在连通图中,道路加入连通图后,道路两端的水库都加入连通图。

在线编程介绍

阿里云开发者社区在线编程产品,针对广大开发者学习、实践、面试、应聘、考试认证等打造的免费在线刷题神器。题库来自笔试模拟题、算法大赛模拟题等,界面整洁明了,操作简单,为用户营造专心答题的学习环境。
本文为大家介绍其中的 第95题:最短路 的题目解析

题目描述

题目等级:容易
知识点:最短路、DP

《缺氧》是Klei Entertainment所制作并发行的一款模拟游戏。这是一个太空殖民地模拟游戏,玩家需要管理你的复制人,帮助他们挖掘、建立和维护一个地下的小行星基地。你需要水、食物、氧气、适当的调节压力和适宜的温度来维持他们活着并满足他们。
在这里,氧气是必不可少的,没有氧气,复制人就会无法生存。电解制氧是一个非常实用的制氧方法,将水通过电解器之后,电解器会消耗水产生氧气和氢气,氧气可以供小人呼吸,氢气则可以进行氢气发电。
复制人在进行了一段时间的挖掘之后,在地图里发现了n个水库,他们的命名方法非常暴力,水库1,水库2,...,水库n。他们挖掘了m条道路将这n个水库联通,现在复制人想知道水库1到水库n的最短距离。

输入水库数n、挖掘的道路条数m (1<= n,m <= 1000)和一个二维数组a,其中a[i]=[x,y,z] (1 <= x,y,z <= 1000) 表示水库x与水库y之间的道路长度为z。

输出水库1到水库n之间的最短距离。

示例1
输入:
5
7
[[1,2 ,3],[1 ,2 ,1],[1 ,5 ,10],[2 ,3 ,4],[2, 4, 10],[2, 5 ,8],[3 ,3 ,9]]
输出:
9

解题思路:DP

本题需要用到动态规划算法。

首先可以创建一个数组记录水库1到其他各个水库的最短距离。做这道题的思路是,假设一开始没有道路,只有n个水库。建立一个连通图,初始状态连通图中只有水库1一个结点。然后将逐步将道路加入连通图中,道路加入连通图的条件是道路两端的水库至少有一个在连通图中,道路加入连通图后,道路两端的水库都加入连通图。

每当有一条道路加入连通图时,计算水库1到此道路两端的水库的最短距离是否可以因为这条道路的加入而更短。如果可以,更新水库1到这些水库的距离。

当所有道路加入连通图后,数组中记录的水库1到水库n的距离即为所求最短距离。

时间复杂度:O(n)
空间复杂度:O(n)

看完之后是不是有了想法了呢,快来练练手吧>>

720-150.png

相关文章
|
存储 算法 安全
国密算法及简单使用
国密算法,即国家密码局认定的国产密码算法,主要用于保护国家关键信息基础设施和商业领域的加密通信和数据安全。根据 2019年10月26日第十三届全国人民代表大会常务委员会第十四次会议通过的《中华人民共和国密码法》,国家对密码实行分类管理,密码分为核心密码、普通密码和商用密码
2433 4
|
8月前
|
存储 人工智能 Serverless
AI Agent 运行时相比传统应用有什么不同:百家企业 AI 实践观察(二)
本文深入探讨了AI Agent运行时的核心挑战及解决方案,分析了AI Agent从理论走向实践过程中所面临的动态推理、资源成本与安全风险等问题,并详细介绍了阿里云函数计算FC如何作为AI Agent运行时及沙箱环境(Sandbox),有效应对脉冲式计算需求、突发性负载、数据隔离与会话亲和性等挑战。同时,文章结合典型场景,展示了函数计算FC在编码式与流程式AI Agent构建中的优势,涵盖Chat AI Agent、营销素材组装、仿真训练等应用,为AI Agent的高效、安全运行提供了完整的技术路径。
908 2
|
2天前
|
人工智能 API 开发工具
Claude Code国内安装:2026最新保姆教程(附cc-switch配置)
Claude Code是我目前最推荐的AI编程工具,没有之一。 它可能不是最简单的,但绝对是上限最高的。一旦跑通安装、接上模型、定好规范,你会发现很多原本需要几小时的工作,现在几分钟就能搞定。 这套方案的核心优势就三个字:可控性。你不用依赖任何不稳定服务,所有组件都在自己手里。模型效果不好?换一个。框架更新了?自己决定升不升。 这才是AI时代开发者该有的姿势——不是被动等喂饭,而是主动搭建自己的生产力基础设施。 希望这篇保姆教程,能帮你顺利上车。做出你自己的作品。
Claude Code国内安装:2026最新保姆教程(附cc-switch配置)
|
9天前
|
缓存 人工智能 自然语言处理
我对比了8个Claude API中转站,踩了不少坑,总结给你
本文是个人开发者耗时1周实测的8大Claude中转平台横向评测,聚焦Claude Code真实体验:以加权均价(¥/M token)、内部汇率、缓存支持、模型真实性及稳定性为核心指标。
3786 21
|
5天前
|
人工智能 JSON BI
DeepSeek V4 来了!超越 Claude Sonnet 4.5,赶紧对接 Claude Code 体验一把
JeecgBoot AI专题研究 把 Claude Code 接入 DeepSeek V4Pro 的真实体验与避坑记录 本文记录我将 Claude Code 对接 DeepSeek 最新模型(V4Pro)后的真实体验,测试了 Skills 自动化查询和积木报表 AI 建表两个场景——有惊喜,也踩
2360 8
|
4天前
|
人工智能 缓存 BI
Claude Code + DeepSeek V4-Pro 真实评测:除了贵,没别的毛病
JeecgBoot AI专题研究 把 Claude Code 接入 DeepSeek V4Pro,跑完 Skills —— OA 审批、大屏、报表、部署 5 大实战场景后的真实体验 ![](https://oscimg.oschina.net/oscnet/up608d34aeb6bafc47f
1977 4
Claude Code + DeepSeek V4-Pro 真实评测:除了贵,没别的毛病
|
21天前
|
人工智能 自然语言处理 安全
Claude Code 全攻略:命令大全 + 实战工作流(建议收藏)
本文介绍了Claude Code终端AI助手的使用指南,主要内容包括:1)常用命令如版本查看、项目启动和更新;2)三种工作模式切换及界面说明;3)核心功能指令速查表,包含初始化、压缩对话、清除历史等操作;4)详细解析了/init、/help、/clear、/compact、/memory等关键命令的使用场景和语法。文章通过丰富的界面截图和场景示例,帮助开发者快速掌握如何通过命令行和交互界面高效使用Claude Code进行项目开发,特别强调了CLAUDE.md文件作为项目知识库的核心作用。
18856 60
Claude Code 全攻略:命令大全 + 实战工作流(建议收藏)
|
2天前
|
SQL 人工智能 弹性计算
阿里云发布 Agentic NDR,威胁检测与响应进入智能体时代
欢迎前往阿里云云防火墙控制台体验!
1168 2

热门文章

最新文章