1110. Delete Nodes And Return Forest ## 思路 DFS掃整個Tree 如果node沒有parent且不在to_delete就加到res ## Complexity Time, Space: O(N) ## Code ```python class Solution: def delNodes(self, root: Optional[TreeNode], to_delete: List[int]) -> List[TreeNode]: to_delete = set(to_delete) res = [] def dfs(node, has_parent): if not node: return if node.val not in to_delete and has_parent is False: res.append(node) has_parent = False if node.val in to_delete else True if node.left: dfs(node.left, has_parent) if node.left.val in to_delete: node.left = None if node.right: dfs(node.right, has_parent) if node.right.val in to_delete: node.right = None dfs(root, False) return res ``` -- ※ 發信站: 批踢踢實業坊(ptt-website.tw), 來自: 185.213.82.191 (臺灣) ※ 文章網址: https://ptt-website.tw/Marginalman/M.1721182519.A.A63
DJYOMIYAHINA: 一大早的 放過我 07/17 10:15
smart0eddie: 大師 07/17 10:19
sustainer123: 放過我 07/17 10:19
argorok: 大師 07/17 10:21