思路
要合并两个二叉树,那就要同时遍历两棵二叉树,找到对应的节点,将其值相加,我们可以最终就更新一棵树,假设我们最终更新root1这棵树,一开始root1的根节点是1,root2根节点是2,那么我们就把root1的根节点值设置为root1.val + root2.val就更新了root1,后序的节点也是一样的更新方式,如果出现了root1的某个节点为空,那直接返回root2的值就可以,因为合并后的值也是root2的值,最终合并完成后,返回root1
实现
js
var mergeTrees = function (root1, root2) {
const deep = (root1, root2) => {
if(!root1) return root2;
if(!root2) return root1;
root1.val += root2.val;
root1.left = deep(root1.left,root2.left)
root1.right = deep(root1.right,root2.right)
return root1
}
return deep(root1, root2)
};