

- 트리노드가 널일땐 return null반환
- 재귀함수로 트리 자식 왼쪽값과 오른쪽값 둘다 돌린다.
- original 트리와 target이 같을때 cloned를 반환하면 된다.
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
class Solution {
TreeNode answer=null;
public final TreeNode getTargetCopy(final TreeNode original, final TreeNode cloned, final TreeNode target) {
if(original ==null){
return null;
}
getTargetCopy(original.right, cloned.right, target);
getTargetCopy(original.left, cloned.left, target);
if(original == target){
answer = cloned;
}
return answer;
}
}
- 주어진 메소드로 재귀함수를 돌리면 되겠다는 생각을했다.
- 어제와 같이 null체크를 하고 자식 노드들에 대해 재귀를 돌렸다.
- 정답에 cloned대신 original를 반환하였더니 에러가 났었다.
- 문제를 제대로 보고 난 후 cloned를 반환하였더니 통과했다.
- binary tree를 통한 재귀함수 공부
- 부족한 자바 문법
- 스프링 공부
- 알고리즘
- 코테 문제 풀이