leetcode617-合并二叉树

leetcode 617

思路

要合并两个二叉树,那就要同时遍历两棵二叉树,找到对应的节点,将其值相加,我们可以最终就更新一棵树,假设我们最终更新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)
};
相关推荐
程序员大澈5 分钟前
1个基于 Three.js 的 Vue3 组件库
javascript·vue.js
程序员大澈11 分钟前
3个 Vue Scoped 的核心原理
javascript·vue.js
hyyyyy!14 分钟前
《原型链的故事:JavaScript 对象模型的秘密》
javascript·原型模式
原来是猿15 分钟前
蓝桥备赛(13)- 链表和 list(上)
开发语言·数据结构·c++·算法·链表·list
程序员大澈24 分钟前
3个好玩且免费的api接口
javascript·vue.js
项目申报小狂人28 分钟前
高性能算法NGO!北方苍鹰优化算法(Northern Goshawk Optimization,NGO)
算法·数学建模
且听风吟ayan39 分钟前
leetcode day26 重复的子字符串
算法·leetcode·c#
仟濹1 小时前
【算法 C/C++】二维差分
c语言·c++·算法
*星星之火*1 小时前
【GPT入门】第9课 思维树概念与原理
gpt·算法·深度优先
程序员大澈1 小时前
4个 Vue 路由实现的过程
javascript·vue.js·uni-app