判断两个二叉树是否相等

判断两个二叉树是否相等_第1张图片

bool isSameTree(struct TreeNode* p, struct TreeNode* q)
{
    //两个都为空
    if(p==NULL&&q==NULL)
    {
        return true;
    }
    //有一个为空
    if(p==NULL||q==NULL)
    {
        return false;
    }
    //两个不为空,但值不相同
    if(p->val!=q->val)
    {
        return false;
    }
    //值相同
    return isSameTree(p->left,q->left)&& isSameTree(p->right,q->right);

}

你可能感兴趣的:(数据结构)