本文主要是介绍每日一题 1466. 重新规划路线(树,DFS),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
- 根据 connections 建立无向树
- 从 0 开始深搜,每次调用 dfs 时判断路径方向是否正确
class Solution:def minReorder(self, n: int, connections: List[List[int]]) -> int:to = defaultdict(set)edge = defaultdict(list)for con in connections:edge[con[0]].append(con[1])edge[con[1]].append(con[0])to[con[0]].add(con[1])ans = 0def dfs(node, fa):nonlocal ansfor ch in edge[node]:if ch == fa:continueif ch in to[node]:ans += 1dfs(ch, node)dfs(0, -1)return ans
这篇关于每日一题 1466. 重新规划路线(树,DFS)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!