先序遍历,想象一下两个树如果已经被合并了,那么它的节点就一共分为两种:
class Solution {
public TreeNode mergeTrees(TreeNode root1, TreeNode root2) {
if (null == root1 && null == root2) return null;
if (null == root2) {
return root1;
} else if (null == root1) {
return root2;
} else {
return new TreeNode(root1.val + root2.val,
mergeTrees(root1.left, root2.left),
mergeTrees(root1.right, root2.right));
}
}
}
原文:https://www.cnblogs.com/scarecrow-wbl/p/14984077.html