- Reference
- dfs ๋ฐฉ์์ผ๋ก ํ์๋ค. (์ฌ๊ท)
- ํ์ด์ฐธ์ด ๋ง์ง๋ง์ค์์ ๋๋ฒ์งธ์ธ
self.answer
๋ถ๋ถ์ ๋ฐ์ค์ ์ณ์ hyun
์๊ฒ ๋์์ ์์ฒญํ๋ค.
- ๊ฒฐ๋ก ์ ์๋๋ ๊ทธ๋ ๊ณ if๋ฌธ์ด ์ ๋๋ฉด self.answer๊ฐ ์์ฑ์ด ์ ๋๋ ์์ผ๋ก๋ ๊ผญ ์์ฑํด์ฃผ์!
- ์์ฑ์ X
- Runtime
632 ms
- Beats
43.13%
- ์์ฑ์ O
- Runtime
624 ms
- Beats
52.38%
- ์๊ฐ๋ณต์ก๋: $O(N)$
Solution
# Definition for a binary tree node.
class TreeNode:
def __init__(self, x):
self.val = x
self.left = None
self.right = None
class Solution:
# ์ถ๊ฐ๋ ์์ฑ์
def __init__(self):
self.answer = None
def getTargetCopy(self, original: TreeNode, cloned: TreeNode, target: TreeNode) -> TreeNode:
self.inorder(original, cloned, target)
return self.answer
def inorder(self, original: TreeNode, cloned: TreeNode, target: TreeNode):
if original:
self.inorder(original.left, cloned.left, target)
if original is target:
self.answer = cloned
self.inorder(original.right, cloned.right, target)
Leave a comment