import java.util.*;
/*
* public class TreeNode {
* int val = 0;
* TreeNode left = null;
* TreeNode right = null;
* }
*/
public class Solution {
/**
*
* @param t1 TreeNode类
* @param t2 TreeNode类
* @return TreeNode类
*/
public TreeNode mergeTrees (TreeNode t1, TreeNode t2) {
// write code here
if (t1 == null && t2 == null) {
return null;
}
if (t1 != null && t2 == null) {
return t1;
}
if (t1 == null && t2 != null) {
return t2;
}
if (t1 != null && t2 != null) {
t1.val += t2.val;
}
merge (t1, t2);
return t1;
}
private void merge (TreeNode t1, TreeNode t2) {
if (t2.left != null || t2.right != null) {
if (t2.left != null) {
if (t1.left == null) {
t1.left = new TreeNode(t2.left.val);
} else {
t1.left.val += t2.left.val;
}
merge(t1.left, t2.left);
}
if (t2.right != null) {
if (t1.right == null) {
t1.right = new TreeNode(t2.right.val);
} else {
t1.right.val += t2.right.val;
}
merge(t1.right, t2.right);
}
}
}
}