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

中小企业网站建设服务自媒体营销代理

中小企业网站建设服务,自媒体营销代理,上海进博会,百度不收录新网站572. 另一棵树的子树 给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在,返回 true ;否则,返回 false 。 二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。tr…

572. 另一棵树的子树

给你两棵二叉树 rootsubRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在,返回 true ;否则,返回 false

二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。tree 也可以看做它自身的一棵子树。

示例 1:

输入: root = [3,4,5,1,2], subRoot = [4,1,2]
输出: true

示例 2:

输入: root = [3,4,5,1,2,null,null,null,null,0], subRoot = [4,1,2]
输出: false

提示:

  • root 树上的节点数量范围是 [1, 2000]
  • subRoot 树上的节点数量范围是 [1, 1000]
  • − 1 0 4 ≤ r o o t . v a l ≤ 1 0 4 -10^4 \leq root.val \leq 10^4 104root.val104
  • − 1 0 4 ≤ s u b R o o t . v a l ≤ 1 0 4 -10^4 \leq subRoot.val \leq 10^4 104subRoot.val104

解法一(迭代+暴力匹配)

思路分析:

  1. 对二叉树root采用前序遍历进行遍历,寻找与二叉树subRoot的根节点相等的节点,找到某节点后,判断以该节点为根节点的子树 是否与 subRoot相等。

实现代码如下:

class Solution {public boolean isSubtree(TreeNode root, TreeNode subRoot) {// 使用统一迭代进行二叉树遍历Deque<TreeNode> stack = new LinkedList<>();stack.push(root);while (!stack.isEmpty()) {TreeNode node = stack.pop();if (node.val == subRoot.val) {    // 若出现与subRoot的根节点值相等 则进一步判断是否为子树if (isSameTree(node, subRoot))return true;    // 为子树 则直接返回true}if (node.right != null) stack.push(node.right);if (node.left != null) stack.push(node.left);}return false;}// 判断两棵树是否相等private boolean isSameTree(TreeNode p, TreeNode q) {if (p == null && q == null) return true;if (p == null || q == null) return false;return p.val == q.val && isSameTree(p.left, q.left) && isSameTree(p.right, q.right);}
}

提交结果如下:

解答成功:
执行耗时:5 ms,击败了14.15% 的Java用户
内存消耗:43.1 MB,击败了8.66% 的Java用户

复杂度分析:

  • 时间复杂度: O ( m ⋅ n ) O(m \cdot n) O(mn),subRoot是子树,且刚好遍历整个root
  • 空间复杂度: O ( m + n ) O(m+n) O(m+n),递归调用和前序遍历root
http://www.hkea.cn/news/923081/

相关文章:

  • 开发简单小程序公司深圳网站优化哪家好
  • 网站开发劣势搜索引擎排名优化
  • 桂林网站优化公司企业网络营销顾问
  • 上海外贸出口代理公司排名搜索引擎优化的主要工作有
  • 一般做企业网站需要什么资料广告咨询
  • 广州网站建设兼职网站为什么要做seo
  • 中企动力官网 网站怎么在平台上做推广
  • 教育培训网站建设方案广告宣传费用一般多少
  • 计算机网站设计论文营销排名seo
  • 源码资源国内专业seo公司
  • 丽水微信网站建设报价免费精准客源
  • 广东建设工程中标公示网站google搜索引擎优化
  • 南宁老牌网站建设公司正版google下载
  • 网站做信用认证有必要吗微信朋友圈推广平台
  • 电子政务网站建设要求百度关键词规划师
  • 博客网站开发毕设免费大数据分析网站
  • 深圳教育平台网站建设好消息疫情要结束了
  • 国外设计文章的网站淘宝代运营靠谱吗
  • 市桥网站建设sem论坛
  • 猎头公司是做什么的可靠吗排名优化外包公司
  • 扶贫网站建设关键词查询神器
  • 沈阳酒店企业网站制作公司2023年9月疫情又开始了吗
  • 厦门专业网站建设如何快速推广一个新产品
  • 帮人做传销网站违法吗seo网站排名助手
  • 如何做优品快报下的子网站营销型网站建设目标
  • 用织梦做网站调用乱码营业推广是什么意思
  • 做走私网站北京口碑最好的it培训机构
  • 网站建设OA系统开发it培训机构哪家好
  • 网站运维可以做哪些域名查询网站入口
  • 网站开发的基本语言外贸平台自建站