• 167.二叉树:另一棵树的字树(力扣)


    代码解决

    1. /**
    2. * Definition for a binary tree node.
    3. * struct TreeNode {
    4. * int val;
    5. * TreeNode *left;
    6. * TreeNode *right;
    7. * TreeNode() : val(0), left(nullptr), right(nullptr) {}
    8. * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
    9. * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
    10. * };
    11. */
    12. class Solution {
    13. public:
    14. // 判断两棵树是否相同
    15. bool isSame(TreeNode* s, TreeNode* t) {
    16. if (s == nullptr && t == nullptr) {
    17. return true; // 两棵树都为空,相同
    18. }
    19. if (s == nullptr || t == nullptr) {
    20. return false; // 一棵树为空,一棵树非空,不相同
    21. }
    22. if (s->val != t->val) {
    23. return false; // 根节点值不同,不相同
    24. }
    25. // 递归检查左右子树
    26. return isSame(s->left, t->left) && isSame(s->right, t->right);
    27. }
    28. // 判断 subRoot 是否是 root 的子树
    29. bool isSubtree(TreeNode* root, TreeNode* subRoot) {
    30. if (root == nullptr) {
    31. return subRoot == nullptr; // 如果 root 为空,subRoot 也必须为空才是子树
    32. }
    33. // 如果当前节点的子树和 subRoot 相同,返回 true
    34. if (isSame(root, subRoot)) {
    35. return true;
    36. }
    37. // 递归检查左子树和右子树
    38. return isSubtree(root->left, subRoot) || isSubtree(root->right, subRoot);
    39. }
    40. };

    解释:

    1. isSame 函数

      • isSame 函数用于判断两棵树 st 是否完全相同。
      • 如果两棵树都为空,则返回 true
      • 如果一棵树为空而另一棵树非空,则返回 false
      • 如果两棵树的根节点值不同,则返回 false
      • 递归检查两棵树的左子树和右子树是否相同。
    2. isSubtree 函数

      • isSubtree 函数用于判断 subRoot 是否是 root 的子树。
      • 如果 root 为空,则只有当 subRoot 也为空时才返回 true
      • 首先检查当前节点的子树是否和 subRoot 相同。
      • 如果不相同,递归检查 root 的左子树和右子树是否包含 subRoot
  • 相关阅读:
    如何下载huggingface的模型和权重
    华为机试 - 5键键盘
    Power BI 傻瓜入门 4. Power BI:亮点
    单链表的实现(Single Linked List)---直接拿下!
    vue获取本地缓存并转为json格式
    升级:远程桌面软件玩游戏指南
    Nodejs -- 一文学会如何在Express中使用JWT(json web token)
    深度学习的初始化(暂时)
    【电路笔记】-电流源
    python爬虫(Selenium案列)第二十四
  • 原文地址:https://blog.csdn.net/weixin_63779802/article/details/139425986