Leetcode 3528. Unit Conversion I

打印 上一主题 下一主题

主题 1758|帖子 1758|积分 5274

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x

  • Leetcode 3528. Unit Conversion I

    • 1. 解题思绪
    • 2. 代码实现

  

  • 题目链接:3528. Unit Conversion I
1. 解题思绪

这一题思绪上就是一个宽度优先遍历的问题,给定的图本质上就是一个树,因此我们只需要按照宽度优先遍历的方式遍历一下全部的节点即可。
2. 代码实现

给出python代码实现如下:
  1. MOD = 10**9+7
  2. class Solution:
  3.     def baseUnitConversions(self, conversions: List[List[int]]) -> List[int]:
  4.         n = len(conversions)+1
  5.         
  6.         graph = defaultdict(list)
  7.         for src, tgt, conv in conversions:
  8.             graph[src].append((tgt, conv))
  9.         
  10.         ans = [1 for _ in range(n)]
  11.         q = [0]
  12.         while q:
  13.             src = q.pop(0)
  14.             for tgt, conv in graph[src]:
  15.                 ans[tgt] = (ans[src] * conv) % MOD
  16.                 q.append(tgt)
  17.         return ans
复制代码
提交代码评测得到:耗时595ms,占用内存78.2MB。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

火影

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表