카테고리 없음

[못품/릿코드/javascript] 617. Merge Two Binary Trees

_서리__ 2023. 4. 1. 10:09
var mergeTrees = function(root1, root2) {
    if(!root1) {
        return root2
    }
    if(!root2){
        return root1
    }
    root1.val+=root2.val

    root1.left = mergeTrees(root1.left,root2.left)
    root1.right = mergeTrees(root1.right,root2.right)

    return root1
};

root1에다가 root2를 더하는 방식이다.

만약 root1이 없다면(null이라면) root2를 반환하고 root2가 없다면 root1을 반환한다.

둘 다 있다면 더해준다.

헷갈렸던 것이 root1이 없다고 바로 root2를 반환하면 그 밑의 트리는 어떡하지?? 였는데,

root2.val을 반환한것이 아니라 root2를 반환한것이기 때문에 어차피 그 밑의 트리는 다 딸려온다.

 

최종적으로 root1을 더해준다.