100. Same Tree

来源:互联网 发布:664uu com新域名 编辑:程序博客网 时间:2024/06/03 22:16

自己的代码 虽然0ms 但是好傻

class Solution {public:    bool isSameTree(TreeNode* p, TreeNode* q) {        return checkPre(p, q) && checkIn(p, q);    }    bool checkPre(TreeNode *p, TreeNode *q){        if((!p && q) || (!q && p))            return false;        if(p && q){            if(p->val != q->val) return false;            bool f = checkPre(p->left, q->left);            if(!f) return false;            f = f && checkPre(p->right, q->right);            if(!f) return false;        }        return true;    }    bool checkIn(TreeNode *p, TreeNode *q){         if((!p && q) || (!q && p))            return false;        if(p && q){            bool f = checkIn(p->left, q->left);            if(!f) return false;            if(p->val != q->val) return false;            f = f && checkIn(p->right, q->right);            if(!f) return false;        }        return true;    }};


人家的代码

class Solution {public:    bool isSameTree(TreeNode* p, TreeNode* q) {        if (p==NULL && q==NULL) return true;        else if (p ==NULL || q==NULL)   return false;                if (p->val==q->val)            return isSameTree(p->left,q->left) && isSameTree(p->right,q->right);        else            return false;    }};