1、题目
?
2、思路
首先判断两个树的根节点,是否为空,有一个为空则直接返回不为空的。其次,选择一颗树的根节点作为最终的树,最后依次向下递归以及判断。具体的看代码,很简单哈!
3、代码
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){
return t2;
}else if(t2==null){
return t1;
}
t1.val = t1.val+t2.val;
if(t1.left!=null && t2.left!=null){
mergeTrees(t1.left,t2.left);
}
if(t1.left==null && t2.left!=null){
t1.left = t2.left;
}
if(t1.right!=null && t2.right!=null){
mergeTrees(t1.right,t2.right);
}
if(t1.right==null && t2.right!=null){
t1.right = t2.right;
}
return t1;
}
}
|