给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。
输入:
Tree 1 Tree 2
1 2
/ /
3 2 1 3
/
5 4 7
输出:
合并后的树:
3
/
4 5
/
5 4 7
class Solution {
TreeNode dfs(TreeNode r1, TreeNode r2) {
if (r2==null) return r1;
if (r1==null) return r2;
r1.val+=r2.val;
r1.left=dfs(r1.left, r2.left);
r1.right=dfs(r1.right, r2.right);
return r1;
}
public TreeNode mergeTrees(TreeNode r1, TreeNode r2) {
return dfs(r1, r2);
}
}