首页 > 其他分享 >力扣简617 合并二叉树

力扣简617 合并二叉树

时间:2023-03-08 09:56:31浏览次数:48  
标签:right val 617 力扣 二叉树 root22 null root11 left

一遍过欸 但是没捋清楚 所以写了好半天

不过运行速度很差 我发现我只会广度优先

这题深度憨简单

 

 

 

class Solution {
    public TreeNode mergeTrees(TreeNode root1, TreeNode root2) {
        if(root1==null) {
            return root2;
        }
        if(root2==null) {
            return root1;
        } 

        TreeNode root11=new TreeNode(); 
        TreeNode root22=new TreeNode();
        Queue<TreeNode> queue1=new LinkedList<TreeNode>();
        Queue<TreeNode> queue2=new LinkedList<TreeNode>();
        
        queue1.add(root1);
        queue2.add(root2);
        root1.val=root1.val+root2.val;
        
        //只要有一个不为0就得往里加
        while(!queue1.isEmpty()||!queue2.isEmpty()) {
            root11=queue1.poll();
            root22=queue2.poll();
            
            if(root11.left!=null&&root22.left!=null) {
                queue1.add(root11.left);
                queue2.add(root22.left);
                root11.left.val=root11.left.val+root22.left.val;
            }
            else if(root22.left!=null&&root11.left==null) {
                root11.left=root22.left;
            }
            if(root11.right!=null&&root22.right!=null) {
                queue1.add(root11.right);
                queue2.add(root22.right);
                root11.right.val=root11.right.val+root22.right.val;
            }            
            else if(root22.right!=null&&root11.right==null) {
                root11.right=root22.right;
            }
        }
        return root1;
    }
}

 

标签:right,val,617,力扣,二叉树,root22,null,root11,left
From: https://www.cnblogs.com/ayuanjiejie/p/17188706.html

相关文章

  • 二叉树的中序遍历
    1.图的中序遍历classTreeNode{  intval;  TreeNodeleft;  TreeNoderight;  TreeNode(){};  TreeNode(intval){this.val=val;}  Tre......
  • 力扣---709. 转换成小写字母
    给你一个字符串s,将该字符串中的大写字母转换成相同的小写字母,返回新的字符串。示例1:输入:s="Hello"输出:"hello"示例2:输入:s="here"输出:"here"示例3:输入:s="LOVELY"......
  • 力扣---1653. 使字符串平衡的最少删除次数
    给你一个字符串s,它仅包含字符'a'和'b'​​​​。你可以删除s中任意数目的字符,使得s平衡。当不存在下标对(i,j)满足i<j,且s[i]='b'的同时s[j]='a',此......
  • 力扣80.删除重复元素2
    给你一个有序数组nums,请你原地删除重复出现的元素,使得出现次数超过两次的元素只出现两次,返回删除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组......
  • 力扣刷题之数组篇
    数组篇1.二分查找给定一个n个元素有序的(升序)整型数组nums和一个目标值target,写一个函数搜索nums中的target,如果目标值存在返回下标,否则返回-1。classSoluti......
  • 力扣---26. 删除有序数组中的重复项
    给你一个升序排列的数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。元素的相对顺序应该保持一致。由于在某些语言中不能改......
  • 【LeetCode二叉树#20】二叉搜索树转换为累加树,巩固二叉树的遍历(特殊的中序遍历)
    将二叉搜索树转换为累加树力扣题目链接(opensnewwindow)给出二叉搜索树的根节点,该树的节点值各不相同,请你将其转换为累加树(GreaterSumTree),使每个节点node的新值......
  • 【LeetCode二叉树#18】修剪二叉搜索树(涉及重构二叉树与递归回溯)
    修剪二叉搜索树力扣题目链接(opensnewwindow)给定一个二叉搜索树,同时给定最小边界L和最大边界R。通过修剪二叉搜索树,使得所有节点的值在[L,R]中(R>=L)。你可能需......
  • 【LeetCode二叉树#19】有序数组转换为二叉搜索树(构造二叉树)
    将有序数组转换为二叉搜索树力扣题目链接(opensnewwindow)将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个......
  • 力扣第335场周赛补题题解
    目录1.递枕头2.二叉树中的第K大层和3.分割数组使乘积互质4.获得分数的方法数1.递枕头classSolution{public:intpassThePillow(intn,inttime){......