题解 | #对称的二叉树#

对称的二叉树

http://www.nowcoder.com/practice/ff05d44dfdb04e1d83bdbdab320efbcb

深搜

详见代码: 对称比对!

/*
struct TreeNode {
    int val;
    struct TreeNode *left;
    struct TreeNode *right;
    TreeNode(int x) :
            val(x), left(NULL), right(NULL) {
    }
};
*/
class Solution {
private:
    bool helper(TreeNode* pLeft, TreeNode* pRight){
        if(pLeft == NULL && pRight == NULL) return true;
        else if(pLeft == NULL || pRight == NULL) return false;
        return pLeft -> val == pRight -> val 
            && helper(pLeft -> left, pRight -> right)
            && helper(pLeft -> right, pRight -> left);
    }
public:
    bool isSymmetrical(TreeNode* pRoot) {
        if(pRoot == NULL) return true;
        return helper(pRoot -> left, pRoot -> right);
    }

};
全部评论

相关推荐

不愿透露姓名的神秘牛友
02-12 18:14
RT,这周五就是情人节了,前女友给我发了消息,我该不该回?
Yoswell:原则上来说让她滚,但是本着工作很累下班想吃瓜的心态,我觉得你可以回一下
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务