判断树B是否为A的子结构
分为两步:
1、找到A中B的根节点
2、判断是否是子结构
时间复杂度O(MN),空间复杂度O(M)
class Solution {
public:
bool isSame(TreeNode* A, TreeNode* B){
if(!B) return true;
if(!A) return false;
if(A->val!=B->val) return false;
return isSame(A->left,B->left)&&isSame(A->right,B->right);
}
bool isSubStructure(TreeNode* A, TreeNode* B) {
if(!A||!B) return false;
return isSame(A,B)||isSubStructure(A->left,B)||isSubStructure(A->right,B);
}
};