617. 合并二叉树

作者: 名字是乱打的 | 来源:发表于2021-12-27 02:14 被阅读0次

一 题目:

二 思路:

  • 每次分别进行同一侧子树的判断,返回一个新结点;
  • 如果其中一个子树不存在,那么直接用另外一个子树作为新树;
  • 如果两个子树都存在,结合两个子树的值,并进行其左右孩子树的递归判断;

三 代码:

class Solution {
    public TreeNode mergeTrees(TreeNode root1, TreeNode root2) {
        TreeNode res = dfs(root1, root2);
        return res;
    }

    //找出合并后的结点
    private TreeNode dfs(TreeNode root1, TreeNode root2) {
        if (root1==null){
            return root2;
        }
        if (root2==null){
            return root1;
        }

        TreeNode newNode = new TreeNode(root1.val + root2.val);
        newNode.left=dfs(root1.left,root2.left);
        newNode.right=dfs(root1.right,root2.right);
        return newNode;
    }
}

四 结果:

相关文章

  • 617. 合并二叉树

    617. 合并二叉树

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

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

  • LeetCode0305

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

  • [二叉树]617. Merge Two Binary Trees

    题目:617. Merge Two Binary Trees 一般的二叉树合并。若两个node重叠,则value等...

  • 精选-LC

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

  • LeetCode 617. 合并二叉树

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

  • Golang解LeetCode 617. 合并二叉树

    617. 合并二叉树 题目描述 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重...

  • [python] 2019-02-24

    .617. Merge Two Binary Trees(二叉树,不会).852. Peak Index in a...

  • 617. 合并二叉树

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

  • 617. 合并二叉树

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

网友评论

    本文标题:617. 合并二叉树

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