当前位置: 首页 > news >正文

力扣hot100 617. 合并二叉树

一、题目

给你两棵二叉树: root1 和 root2 。想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。你需要将这两棵树合并成一棵新二叉树。合并的规则是:如果两个节点重叠,那么将这两个节点的值相加作为合并后节点的新值;否则,不为 null 的节点将直接作为新二叉树的节点。返回合并后的二叉树。注意: 合并过程必须从两个树的根节点开始。示例 1:输入:root1 = [1,3,2,5], root2 = [2,1,3,null,4,null,7]
输出:[3,4,5,5,4,null,7]

示例 2:输入:root1 = [1], root2 = [1,2]
输出:[2,2]

二、思路

与226大致相同,也是递归,挨个把两个节点的值相加就行了,前面加个为空的判断即可

三、代码

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:TreeNode* mergeTrees(TreeNode* root1, TreeNode* root2) {if(root1==NULL&&root2==NULL){    //两个节点都为空return NULL;}if(root1==NULL){    //单个为空return root2;}if(root2==NULL){return root1;}TreeNode* root3=new TreeNode();    //新建合并后的二叉树节点root3->val=root1->val+root2->val;    //赋值root3->left=mergeTrees(root1->left,root2->left);    //递归左右子树root3->right=mergeTrees(root1->right,root2->right);return root3;}
};

http://www.dtcms.com/a/419992.html

相关文章:

  • 海淀营销型网站建设社交网站开发平台
  • 建设工程 法律 网站英语网站大全免费
  • 怎么管理网站添加代码扬州专业外贸网站建设推广
  • 网站空间商怎么做游戏推广工作好做吗
  • 怎样弄一个网站wordpress 用不了矢量
  • DC24V-36V/4.5A H桥直流有刷电机驱动芯片AH6240
  • Powershell 进阶语法(三)
  • 正规的营销型网站建设公司厦门免费自助建站模板
  • 自己如何做网站建设小程序个人开发全过程
  • 大型语言模型的门控注意力:非线性、稀疏性与无注意力沉没
  • 网站建设提供资料创业网站建设怎么样
  • 【开题答辩全过程】以 基于Java的西红柿图书商城网站为例,包含答辩的问题和答案
  • 详细分析Logback日志过大
  • 长沙的网站建设内衣网站建设推广
  • JavaScript 的 type 有哪些
  • 施工员证怎么查询网站网站怎么做直播功能
  • 西安专业做网站的的公司上海央企排名前十名
  • CDN 支持 HTTPS 怎么做?实战要点、常见坑与真机验证流程(CDN HTTPS 配置、证书、SNI、TLS、性能与排查)
  • 做特效的网站腾云网
  • 网站租用服务器多少钱个人网站可以做app吗
  • 高通Android设备像素密度修改
  • HarmonyOS:固定样式弹出框
  • 网站建设与管理读书心得三亚新闻头条最新闻
  • 网站建设织梦怎么样软件开发 网站建设
  • 关于SPI通讯速度笔记
  • 【ROS2学习笔记】节点篇:ROS 2编程基础
  • 七、kubernetes 1.29 之 Service 的工作原理及其使用
  • DeepSeek-Math 学习笔记
  • 认识 Kubernetes:它从哪里来,要解决什么
  • 上海微网站制作建设wordpress改了固定链接出现404