思路
把二叉树节点的值对应相加。
一开始想太多了,想分别对根节点的左右节点进行操作,后来发现想的实在太复杂了,也长个教训,二叉树尽量都只对当前节点本身进行操作,不要搞花里胡哨的。
另外需要注意的就是注意考虑空节点的问题。比如t2位空的时候,t2 也就不存在左节点和右节点。
TreeNode* mergeTrees(TreeNode* t1, TreeNode* t2) {
if(t1!=NULL||t2!=NULL){
if(t1==NULL){
return t2;
}
else if(t1!=NULL){
if(t2!=NULL){t1->val=t1->val+t2->val;}
if(t2==NULL){return t1;}
}
t1->left=mergeTrees(t1->left,t2->left);
t1->right=mergeTrees(t1->right,t2->right);
}
return t1;
}