合并二叉树

一、题目

合并的规则是:如果两个节点重叠,那么将这两个节点的值相加作为合并后节点的新值;

否则,不为 null 的节点将直接作为新二叉树的节点。返回合并后的二叉树。

二、思路

1.如果一棵树为空,另外一棵树不为空,直接覆盖

2.两棵树都有节点,叠加节点值。采用深度优先遍历方式

三、程序实现

var mergeTrees = function(root1, root2) {
//如果一棵树为空,另外一棵树不为空,直接覆盖
if(!root1){
    return root2
}
if(!root2){
    return root1
}
//两棵树都有节点,叠加节点值
//生成新的节点
let node=new TreeNode(
    root1.val+root2.val,
    mergeTrees(root1.left,root2.left),
    mergeTrees(root1.right,root2.right)
)
return node
};
posted @ 2022-05-17 10:42  花村店长  阅读(34)  评论(0)    收藏  举报