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

Leetcode 3650. Minimum Cost Path with Edge Reversals

  • Leetcode 3650. Minimum Cost Path with Edge Reversals
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3650. Minimum Cost Path with Edge Reversals

1. 解题思路

这一题思路上就是一个宽度优先的遍历,我们在存储每一条线段的时候都将正负向的线段存储下来,反向的线段的cost无非就是原始权重的两倍,然后我们进行bfs考察到达终点的最优路线即可。

2. 代码实现

给出python代码实现如下:

class Solution:def minCost(self, n: int, edges: List[List[int]]) -> int:graph = defaultdict(list)for u, v, w in edges:graph[u].append((v, w))graph[v].append((u, 2*w))q = [(0, 0)]seen = set()while q:d, u = heapq.heappop(q)if u == n-1:return dif u in seen:continueseen.add(u)for v, w in graph[u]:if v in seen:continueheapq.heappush(q, (d+w, v))return -1

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

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

相关文章:

  • Vue Router的常用API有哪些?
  • 05 定时器,延时器、递归、内置对象(Object 对象+Math 对象+Date 对象+String对象)
  • Less (CSS 预处理器)
  • 8.18网络编程——基于UDP的TFTP文件传输客户端
  • 后端通用基础代码
  • 电源电路介绍
  • OpenTelemetry、Jaeger 与 Zipkin:分布式链路追踪方案对比与实践
  • 窗口看门狗(WWDG)
  • 网络基础——协议认识
  • Linux权限的学习
  • 抽象类与接口的区别
  • 【C语言篇】操作符详解
  • Ubuntu下无法在huggingface下载指定模型的解决方法
  • Read Frog:一款开源AI浏览器语言学习扩展
  • 如何解决IDEA/Datagrip无法连接数据库的问题:解决方法为添加参数-Djava.net.preferIPv4Stack=true
  • Java原子类详解
  • 并发编程原理与实战(二十四)Java并发基石LockSupport park/unpark机制全解析
  • 车e估牵头正式启动乘用车金融价值评估师编制
  • AI出题人给出的Java后端面经(十八)(日更)
  • Java基础八股复习3 jvm-内存结构
  • 数据仓库理论
  • 具身智能2硬件架构(人形机器人)摘自Openloong社区
  • Vue3 中使用 Element Plus 完整指南
  • 博客项目 Spring + Redis + Mysql
  • 利用DeepSeek辅助WPS电子表格ET格式分析
  • 代码随想录算法训练营四十五天|图论part03
  • flask——4:请求与响应
  • 机器学习(决策树)
  • pytest的前置与后置
  • 决策树:机器学习中的直观分类与回归工具