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)
};
相关推荐
阿蓝灬2 分钟前
React中的stopPropagation和preventDefault
前端·javascript·react.js
天天向上10245 分钟前
vue3 抽取el-dialog子组件
前端·javascript·vue.js
大大dxy大大9 分钟前
机器学习-KNN算法示例
人工智能·算法·机器学习
lecepin10 分钟前
AI Coding 资讯 2025-11-05
前端·javascript
前端小咸鱼一条17 分钟前
17.React获取DOM的方式
前端·javascript·react.js
冴羽23 分钟前
看了下昨日泄露的苹果 App Store 源码……
前端·javascript·svelte
zz0723201 小时前
数据结构 —— 栈
数据结构
关于不上作者榜就原神启动那件事1 小时前
模拟算法乒乓球
开发语言·c++·算法
Madison-No71 小时前
【C++】关于list的使用&&底层实现
数据结构·c++·stl·list·模拟实现
Bug退退退1231 小时前
ArrayList 与 LinkedList 的区别
java·数据结构·算法