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

wordpress版权图片乐陵seo网站优化

wordpress版权图片,乐陵seo网站优化,网站设计价格,微信公众开放平台文章目录 Merge Two Binary Trees 合并二叉树问题描述:分析代码PreOrder DFSPreOrder Tag Merge Two Binary Trees 合并二叉树 问题描述: 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中一棵覆盖到另一棵之上时&#…

文章目录

Merge Two Binary Trees 合并二叉树

问题描述:

给你两棵二叉树: root1root2

想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。你需要将这两棵树合并成一棵新二叉树。合并的规则是:如果两个节点重叠,那么将这两个节点的值相加作为合并后节点的新值;否则,不为 null 的节点将直接作为新二叉树的节点。

返回合并后的二叉树。

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

两棵树中的节点数目在范围 [ 0 , 2000 ] 内 − 1 0 4 < = N o d e . v a l < = 1 0 4 两棵树中的节点数目在范围 [0, 2000] 内\\ -10^4 <= Node.val <= 10^4 两棵树中的节点数目在范围[0,2000]104<=Node.val<=104

分析

目标是将2个树,进行覆盖,可以合并到第3个树上,也可以将tree2合并到tree1.

而且是要求相同的位置进行merge,所以必然要对树进行遍历。

其中最简单的就是前序递归,细节就不说了,all in code.

相对于递归的方法比较容易想到,迭代的实现方式也有很多,所以有点绕。

代码

PreOrder DFS

public TreeNode mergeTrees(TreeNode root1, TreeNode root2) {if(root1==null||root2==null){return root1==null?root2:root1;} root1.val += root2.val;root1.left = mergeTrees(root1.left,root2.left);root1.right = mergeTrees(root1.right,root2.right);return root1;}

时间复杂度 O ( m i n ( M + N ) O(min(M+N) O(min(M+N)

空间复杂度 O ( H ) O(H) O(H)

PreOrder

public TreeNode mergeTrees(TreeNode root1, TreeNode root2) {if(root1==null||root2==null){return root1==null?root2:root1;} Deque<TreeNode[]> queue = new ArrayDeque();queue.offerLast(new TreeNode[]{root1,root2});while(!queue.isEmpty()){TreeNode[] t = queue.pollLast();TreeNode p1 = t[0],p2 =t[1];p1.val+= p2.val;TreeNode l1 = p1.left,l2 = p2.left;TreeNode r1 = p1.right,r2 = p2.right; if(r1!=null&&r2!=null){queue.offerLast(new TreeNode[]{r1,r2});}if(l1!=null&&l2!=null){queue.offerLast(new TreeNode[]{l1,l2});}if(l1==null||l2==null){p1.left = l1==null? l2:l1;} if(r1==null||r2==null){                p1.right = r1==null? r2:r1;} } return root1;}

时间复杂度 O ( m i n ( M + N ) O(min(M+N) O(min(M+N)

空间复杂度 O ( H ) O(H) O(H)

Tag

Tree

DFS

http://www.yayakq.cn/news/157481/

相关文章:

  • 石家庄网站建设汉狮怎么样安全的网站建设服务
  • 如何建立自己网站视频教程怎么样才能把网站关键词做有排名
  • 鄂州市网站设计网站的关键点
  • 淘宝网站如何在邮件里做超链接克隆网站后怎么做
  • 用Off做网站高校网站平台建设
  • 网站推广排名收费wordpress自动保存
  • 成都模板网站建设服务做英文网站 是每个单词首字母大写 还是每段落首字母大写
  • 怎样为企业设计网站网站建设要注意些什么
  • jsp网站开发小程序海外网站seo
  • app开发公司的联系方式苏州首页排名关键词优化
  • 咸阳 网站建设wordpress单位内网做网站
  • 黑龙江网站建站建设用ps做网站得多大像素
  • 资讯类网站建设wordpress 双语主题
  • 广东移动网站seo是什么专业的课程
  • 做电影网站用什么软件叫什么名字吗宁夏建设工程招投标管理中心网站
  • 网站建设教程 冰美人视频WordPress制作小说网站
  • 网站架构分析工具wordpress手机显示不出主题
  • 购物网站开发环境有名的平面设计公司
  • 编程猫官方网站jsp做网站案例
  • 江门做网站设计网上服务大厅登录平台
  • 二级网站pc开奖网站建设
  • asp与sql网站建设wordpress头像本地化
  • 学做室内效果图的网站外贸商城网站制作公司
  • 泉州微信网站建设山西城乡建设学校报名网站
  • 重庆博达建设集团股份有限公司网站桂林生活网租房
  • 专业做网站广州东北石油大学秦皇岛吧
  • 如何打开网站绍兴做网站价格
  • 防红短网址一键生成中山网站推广优化
  • 个人做网站开工作室长沙房地产开发商排名
  • 济南国迅网站建设公司怎么样wordpress必备文件组合