Re: [閒聊] 每日leetcode
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.cc), 來自: 185.213.82.191 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1721182519.A.A63.html
推
07/17 10:15,
1年前
, 1F
07/17 10:15, 1F
推
07/17 10:19,
1年前
, 2F
07/17 10:19, 2F
推
07/17 10:19,
1年前
, 3F
07/17 10:19, 3F
→
07/17 10:21,
1年前
, 4F
07/17 10:21, 4F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 510 之 1554 篇):