博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode 617. 合并二叉树(Merge Two Binary Trees)
阅读量:5173 次
发布时间:2019-06-13

本文共 1697 字,大约阅读时间需要 5 分钟。

617. 合并二叉树

617. Merge Two Binary Trees

题目描述

给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。

你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。

LeetCode617. Merge Two Binary Trees

示例 1:

输入:
Tree 1                    Tree 2                        1                         2                                  / \                       / \                                3   2                     1   3                           /                           \   \                        5                             4   7

输出:

合并后的树:

3                / \               4   5              / \   \              5   4   7

注意: 合并必须从两个树的根节点开始。

Java 实现

TreeNode 类

class TreeNode {    int val;    TreeNode left;    TreeNode right;    TreeNode(int x) {        val = x;    }}

Recursive Solution

class Solution {    public TreeNode mergeTrees(TreeNode t1, TreeNode t2) {        if (t1 == null) {            return t2;        }        if (t2 == null) {            return t1;        }        TreeNode root = new TreeNode(t1.val + t2.val);        root.left = mergeTrees(t1.left, t2.left);        root.right = mergeTrees(t1.right, t2.right);        return root;    }}
class Solution {    public TreeNode mergeTrees(TreeNode t1, TreeNode t2) {        if (t1 == null && t2 == null) {            return null;        }        int val = (t1 == null ? 0 : t1.val) + (t2 == null ? 0 : t2.val);        TreeNode root = new TreeNode(val);        root.left = mergeTrees(t1 == null ? null : t1.left, t2 == null ? null : t2.left);        root.right = mergeTrees(t1 == null ? null : t1.right, t2 == null ? null : t2.right);        return root;    }}

参考资料

转载于:https://www.cnblogs.com/hglibin/p/10889173.html

你可能感兴趣的文章
git常用命令
查看>>
Spring MVC+ajax进行信息验证
查看>>
回文字符串
查看>>
有意思的B+树漫画介绍
查看>>
Spring MVC浅析
查看>>
spring容器、spring MVC容器以及web容器的区别
查看>>
最大线程数量
查看>>
异步操作是什么
查看>>
Flak——跨域问题解决
查看>>
ps -ef|grep详解
查看>>
IDEA建立Spring MVC Hello World 详细入门教程
查看>>
Tomcat远程调试
查看>>
javaSE
查看>>
HBase 经验小结 (Based on 1.x)
查看>>
IE下使用excanvas.js之后动态创建的canvas不支持getContext的解决方法(转)
查看>>
深入理解Spring Redis的使用 (六)、用Spring Aop 实现注解Dao层的自动Spring Redis缓存...
查看>>
django重写用户模型
查看>>
Objective-C 内存管理和ARC
查看>>
数组使用的注意事项
查看>>
【转】十步让你成为一名优秀的Web开发人员
查看>>