0521
代码
class Solution {
public:
bool isSubStructure(TreeNode* A, TreeNode* B) {
if(A==NULL||B==NULL) return false;
return q_val(A,B)||isSubStructure(A>left,B)
||isSubStructure(A->right,B);
}
bool q_val(TreeNode*A,TreeNode*B){
if(B==NULL) return true;
if(A==NULL||A->val!=B->val) return false;
return q_val(A->left,B->left)&&
q_val(A->right,B->right);
}
};
思路
在树 A 中找到和树 B 的根节点的值一样的节点 root(isSubStructure)
判断树 A 中以 root 为根节点的子树是不是包含和树 B 一样的结构(q_val)