leetcode 合并二叉树 简单_leetcode

 

 

两棵树同时走,当遇到 root1 为 null 时,如果 root2 不为 null,就将 root2 拼接的 root1 的父节点上即可。同时不为 null 就是合并 val

class Solution {
public:
    TreeNode* mergeTrees(TreeNode* root1, TreeNode* root2) {
        if(!root1 && !root2) return nullptr;
        if(!root1 || !root2) return root1 ? root1 : root2;
        root1 -> val += root2 -> val;
        auto retLef = mergeTrees(root1 -> left, root2 -> left);
        auto retRig = mergeTrees(root1 -> right, root2 -> right);
        root1 -> left = retLef;
        root1 -> right = retRig;
        delete root2;
        return root1;
    }
};