- 递归,直接在t1上修改
/**
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
class Solution {
public:
/**
*
* @param t1 TreeNode类
* @param t2 TreeNode类
* @return TreeNode类
*/
TreeNode* mergeTrees(TreeNode* t1, TreeNode* t2) {
// write code here
if(!t1) return t2;
if(!t2) return t1; //如果t2节点不存在,则用t1
t1->val = t1->val + t2->val; //t1 t2都存在,t1的值更新为两节点值之和
t1->left = mergeTrees(t1->left, t2->left);
t1->right = mergeTrees(t1->right, t2->right);
return t1;
}
};