美文网首页
树5 合并二叉树

树5 合并二叉树

作者: 是黄小胖呀 | 来源:发表于2020-09-13 16:56 被阅读0次

题目如下:

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

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

示例 1:

输入:

Tree 1                    Tree 2                 

          1                        2                           

        / \                      / \                           

        3  2                    1  3                       

      /                          \  \                     

      5                            4  7                 

输出:

合并后的树:

    3

    / \

  4  5

  / \  \

5  4  7

解题思路1:

递归,分情况考虑写终止条件+不断递归

# Definition for a binary tree node.

# class TreeNode:

#     def __init__(self, x):

#         self.val = x

#         self.left = None

#         self.right = None

class Solution:

    def mergeTrees(self, t1: TreeNode, t2: TreeNode) -> TreeNode:

        t=TreeNode()

        if not t1 and not t2:

            return 

        if not t1 and t2:

            t.val=t2.val

            t.left=t2.left

            t.right=t2.right

        if  t1 and not t2:

            t.val=t1.val

            t.left=t1.left

            t.right=t1.right

        if t1 and t2:

             t.val=t1.val+t2.val

             t.left=self.mergeTrees(t1.left,t2.left)

             t.right=self.mergeTrees(t1.right,t2.right)

        return t

相关文章

  • 617. 合并二叉树

    617. 合并二叉树

  • 02-13:leetcode重刷2之链表反转

    1、链表反转 2、反转二叉树 3、合并二叉树 4、对称二叉树 1、反转链表 classSolution: defr...

  • 精选-LC

    10. 正则表达式匹配 617. 合并二叉树 104. 二叉树的最大深度 557. 反转字符串中的单词 III 5...

  • 树5 合并二叉树

    题目如下: 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。 你需要将他们合...

  • LeetCode0305

    461. 汉明距离 617. 合并二叉树 226. 翻转二叉树 104. 二叉树的最大深度 206. 反转链表 2...

  • 617. Merge Two Binary Trees

    将两个二叉树合并为一个新的二叉树。合并的规则是,如果两个节点重叠,将值相加作为节点合并后的新值,否则不为null的...

  • LeetCode题解:合并二叉树

    题目描述 已知两颗二叉树,将它们合并成一颗二叉树。合并规则是:都存在的结点,就将结点值加起来,否则空的位置就由另一...

  • 合并二叉树

    合并二叉树 https://leetcode-cn.com/problems/merge-two-binary-t...

  • 617. 合并二叉树、404. 左叶子之和、653. 两数之和

    617. 合并二叉树[https://leetcode-cn.com/problems/merge-two-bin...

  • 镜像二叉树

    题目描述 二叉树的镜像定义:源二叉树8/ 6 10/ \ / 5 7 9 11镜像二叉树8/ 10 ...

网友评论

      本文标题:树5 合并二叉树

      本文链接:https://www.haomeiwen.com/subject/pgtoektx.html