mirror of
https://github.com/ShusenTang/LeetCode.git
synced 2026-06-30 21:51:38 +00:00
736 B
736 B
617. Merge Two Binary Trees
思路
合并两个二叉树。就是一个很简单的递归:
- 若
t1和t2任意一个为空,那么直接返回另一个即可(递归出口); - 否则,将
t1的值加上t2的值,然后递归合并t1和t2的左子树以及t1和t2的右子树。
C++
class Solution {
public:
TreeNode* mergeTrees(TreeNode* t1, TreeNode* t2) {
if(t1 == NULL) return t2;
if(t2 == NULL) return t1;
t1 -> val += t2 -> val;
t1 -> left = mergeTrees(t1 -> left, t2 -> left);
t1 -> right = mergeTrees(t1 -> right, t2 -> right);
delete t2;
return t1;
}
};