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

LeetCode —— 572. 另一棵树的子树

572. 另一棵树的子树

题目:给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在,返回 true ;否则,返回 false 。
二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。tree 也可以看做它自身的一棵子树。
在这里插入图片描述
在这里插入图片描述

/*** 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) {}* };*///简单通过中序放入顺序表查找是否有一样部分不行,不论什么遍历顺序都不能保证一样,因为树结构变一下,它们那部分的顺序可能会变一样。所以只能将Tree的所有节点全部当作头节点遍历一遍,通过左右指针来判断。//遍历root树的时候都会对root树传的根节点与subroot当作两个树重新遍历一遍,如果相同,则说明sub是子树。
class Solution {
public://判断bool isSubtree_(TreeNode* root, TreeNode* subRoot){if(root == nullptr && subRoot == nullptr)return true;if(subRoot == nullptr || root == nullptr)return false;return (root->val == subRoot->val) && isSubtree_(root->left, subRoot->left) && isSubtree_(root->right, subRoot->right);}//通过遍历判断bool preOrder_judge(TreeNode* root, TreeNode* subRoot){   if(root == nullptr)return false;return isSubtree_(root, subRoot) || preOrder_judge(root->left, subRoot) || preOrder_judge(root->right, subRoot);}bool isSubtree(TreeNode* root, TreeNode* subRoot) {//每个节点当作头节点遍历一遍,看是否相等。return preOrder_judge(root, subRoot);}
};
http://www.xdnf.cn/news/3233.html

相关文章:

  • 【昇腾】Benchmark
  • 算法导论第6章思考题
  • linux find命令妙用
  • 公司运营-税务篇
  • winget使用
  • 【人脸去遮挡前沿】三阶段级联引导学习如何突破真实场景遮挡难题?
  • 从零开始学Python游戏编程49-二维数组3
  • 【数学建模国奖速成系列】优秀论文绘图复现代码(三)
  • 4月30日星期三今日早报简报微语报早读
  • 关于PyCharm新版本出现大量空的`jcef_xx.log`文件的解决方法
  • 【Vue2】1-创建一个Vue实例
  • 麒麟、UOS系统在线打开word文件并提取修订痕迹
  • 机器视觉橡胶制品检测的应用
  • 【来自AI】RS485,Rs232,Modbus的区别和联系是什么
  • 小知识总结记录
  • 用Python构建自动驾驶传感器融合算法:从理论到实践
  • 第五届图像、视觉与智能系统国际会议(ICIVIS 2025)参会通知
  • Poco C++全面开发指南:网络应用开发
  • 综合开发-手机APP远程控制PLC1500柱灯的亮灭
  • 嵌入式开发高频面试题全解析:从基础编程到内存操作核心知识点实战
  • 基于UNet算法的农业遥感图像语义分割——补充版
  • Mysql数据库高可用解决方案-Mysql Router
  • 智能参谋部系统架构和业务场景功能实现
  • MCP Server 的 Stdio 与 SSE:两种通信方式的本质差异与技术选型指南
  • leetcode42-接雨水
  • OCR身份证识别(正反面)_个人证照OCR识别_开放API接口使用指南
  • iVX:数字化转型全场景技术革新与生态构建实践
  • 大连理工大学选修课——机器学习笔记(6):决策树
  • JCRQ1河马算法+消融实验!HO-CNN-LSTM-Attention系列四模型多变量时序预测,作者:机器学习之心
  • Linux架构篇、第1章_01架构的介绍HTTP HTTPS 协议全面解析