[LeetCode]572. Subtree of Another Tree
来源:互联网 发布:para海外专营店淘宝 假 编辑:程序博客网 时间:2024/05/16 23:01
572. Subtree of Another Tree
Given two non-empty binary trees s and t, check whether tree t has exactly the same structure and node values with a subtree of s. A subtree of s is a tree consists of a node in s and all of this node’s descendants. The tree s could also be considered as a subtree of itself.Example 1:
Given tree s:3
/ \
4 5
/ \
1 2
Given tree t:
4
/ \
1 2
Return true, because t has the same structure and node values with a subtree of s.
Example 2:
Given tree s:3
/ \
4 5
/ \
1 2
/
0
Given tree t:
4
/ \
1 2
Return false.
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: bool isSubtree(TreeNode* s, TreeNode* t) { bool result = false; // 保证不为空的情况下才传给子函数处理,t题目其实已经说了不为空了 if(s != NULL && t != NULL){ // 如果值相同,则调用is函数判断是不是相同的子树 if(s->val == t->val) result = is(s, t); // 如果根结点不是,则分别递归判断左右子结点 if(result == false) result = isSubtree(s->left, t); if(result == false) result = isSubtree(s->right, t); } return result; } // 此函数判断root1和root2 是不是相同的子树 bool is(TreeNode* root1, TreeNode* root2){ // 题目强调的是子树,不是子结构,所以只有遍历到都为空时才返回true if(root1 == NULL && root2 == NULL) return true; if(root1 == NULL || root2 == NULL) return false; if(root1->val != root2->val) return false; return is(root1->left, root2->left) && is(root1->right, root2->right); }};
阅读全文
0 0
- [LeetCode]572. Subtree of Another Tree
- [leetcode]: 572. Subtree of Another Tree
- leetcode 572. Subtree of Another Tree
- [leetcode: Python]572. Subtree of Another Tree
- [leetcode]572. Subtree of Another Tree
- LeetCode 572. Subtree of Another Tree
- [LeetCode] 572. Subtree of Another Tree
- LeetCode-572. Subtree of Another Tree (Java)
- Leetcode-572. Subtree of Another Tree
- leetcode 572. Subtree of Another Tree
- LeetCode 572. Subtree of Another Tree
- [LeetCode]572. Subtree of Another Tree
- 【LeetCode】572. Subtree of Another Tree
- leetcode 572. Subtree of Another Tree
- leetcode#572. Subtree of Another Tree
- LeetCode 572. Subtree of Another Tree
- LeetCode刷题 | 572. Subtree of Another Tree
- LeetCode: Subtree of Another Tree
- HDU3572——Task Schedule (最大流判断满流)
- PHP中$$的应用
- 图片或文字的摇摆shake
- selenium + python环境搭建
- 构造器注入、setter注入
- [LeetCode]572. Subtree of Another Tree
- Linux开发环境搭建-Ubuntu16.04/交叉编译器
- 欢迎使用CSDN-markdown编辑器
- Triple Sums(FFT 建模)
- Linux 动态装载库(dlopen)
- 自底向上语法分析的本质与原理
- sublime text3---Emmet:HTML/CSS代码快速编写神器
- winpython升级tensorflow遇到的小问题
- Java ConcurrentModificationException异常原因和解决方法