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

中信建设证券官方网站建网站

中信建设证券官方网站,建网站,wordpress为何需要lamp环境,做外贸网站设计上需要注意什么从0开始的秋招刷题路,记录下所刷每道题的题解,帮助自己回顾总结 100. 相同的树 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是…

从0开始的秋招刷题路,记录下所刷每道题的题解,帮助自己回顾总结

100. 相同的树

给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。

如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。

示例 1:

在这里插入图片描述

输入:p = [1,2,3], q = [1,2,3]
输出:true

示例 2:

在这里插入图片描述

输入:p = [1,2], q = [1,null,2]
输出:false

示例 3:
在这里插入图片描述

输入:p = [1,2,1], q = [1,1,2]
输出:false

提示:
两棵树上的节点数目都在范围 [0, 100] 内
−104-10^4104 <= Node.val <= 10410^4104

思路一:DFS
特例处理,先比较两个根节点: 如果两节点都为空,返回true; 如果两节点一个为空一个不为空,返回false; 如果两节点值不相同,返回false
如果两个节点值相同,比较左子树和右子树是否相同,这就进入了递归

代码

class Solution {public boolean isSameTree(TreeNode p, TreeNode q) {if(p == null && q == null){return true;}else if(p == null || q == null){return false;}else if(p.val == q.val){return isSameTree(p.left, q.left) && isSameTree(p.right, q.right);}return false;
}

复杂度分析

时间复杂度:O(min(m,n))O(min(m,n))O(min(m,n)),m和n分别是两个树的节点数
空间复杂度:O(min(height1,height2))O(min(height1,height2))O(min(height1,height2)),两树高度

思路二:BFS
特例处理:如果两根节点都为空,返回true;如果两根节点一个为空一个不为空,返回false
用两个队列分别存储p树和q树的节点,只要两个队列都非空就进入循环
循环中,先弹出两个队列的节点,如果值不同,直接返回false
接下来比较俩节点的子节点情况,如果俩节点的左子节点和右子节点没有分别都存在或都不存在,返回false
存在的子节点们分别入队
循环结束后,只有当两个队列都为空时才会返回true

代码

class Solution {public boolean isSameTree(TreeNode p, TreeNode q) {if(p == null && q == null){return true;}else if(p == null || q == null){return false;}Queue<TreeNode> queue1 = new LinkedList<>();Queue<TreeNode> queue2 = new LinkedList<>();queue1.offer(p);queue2.offer(q);while(!queue1.isEmpty() && !queue2.isEmpty()){TreeNode node1 = queue1.poll();TreeNode node2 = queue2.poll();if(node1.val != node2.val){return false;}if((node1.left != null) ^ (node2.left != null)){return false;}if((node1.right != null) ^ (node2.right != null)){return false;}if(node1.left != null){queue1.offer(node1.left);}if(node1.right != null){queue1.offer(node1.right);}if(node2.left != null){queue2.offer(node2.left);}if(node2.right != null){queue2.offer(node2.right);}}return queue1.isEmpty() && queue2.isEmpty();}
}

复杂度分析

时间复杂度:O(min(m,n))O(min(m,n))O(min(m,n))
空间复杂度:O(min(m,n))O(min(m,n))O(min(m,n))

http://www.hrbkazy.com/news/10675.html

相关文章:

  • 福州专业做网站的公司中国免费网站服务器下载
  • 食品网站建设建议兰州网络推广电话
  • 兰州疫情最新情况数据黑帽seo优化
  • 中国三农建设工作委员会官方网站灰色行业推广平台
  • 网站编程学习b站2023推广网站
  • 做商城网站的公司推荐网络运营策划
  • dreamweaver如何做网站一个企业该如何进行网络营销
  • 自己做网站要不要钱阿里巴巴官网
  • 移动网站优化广告代理
  • 郑州正规的网站设计免费软件下载网站有哪些
  • wordpress资讯cms主题刷关键词排名seo软件
  • 房屋中介网站怎么做长沙关键词自然排名
  • 网站建设流程总结网站推广和优化的原因网络营销
  • 哪个网站可以做任务网站seo工具
  • 网站建设制作设计营销公司杭州十大小说网站排名
  • 攻击Wordpress网站百度极简网址
  • c 网站做微信收款功能线下推广渠道和方式
  • 重庆的网站设计公司价格拼多多网店代运营要多少费用
  • 制作钓鱼网站属于什么罪百度小说风云榜
  • 织梦做淘宝客网站视频教程百度账号注册申请
  • 遵化市有做奇麟网站的吗百度热搜广告设计公司
  • 新手如何做英文网站赚美元seo刷关键词排名优化
  • 淄博周村专业网站建设公司网络营销的四大基础理论
  • 东莞凤岗网站建设全媒体运营师报考官网在哪里
  • 北京市重大项目建设指挥部网站如何做网站推广及优化
  • 三亚防疫情最新通知北京seo公司有哪些
  • 做网站细节百度自动点击器下载
  • 长春网络公司宣传廊坊网络推广优化公司
  • 做网站实现登陆功能谷歌浏览器 安卓下载2023版官网
  • 百度网站类型推广咨询服务公司