题解 | #对称的二叉树#

对称的二叉树

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

  1. 空树也是对称树。
  2. 如果时false就返回。
/*
struct TreeNode {
    int val;
    struct TreeNode *left;
    struct TreeNode *right;
    TreeNode(int x) :
            val(x), left(NULL), right(NULL) {
    }
};
*/
class Solution {
public:
    bool isSymmetrical(TreeNode* pRoot) {
        if(!pRoot) return true;//空的是对称树
        return isS(pRoot,pRoot);
    }

    bool isS(TreeNode* left, TreeNode* right){


        if(!left&&!right) return true;

        if(!left||!right) return false;

        if(left->val!= right->val) return false;


        return isS(left->left, right->right)&&isS(left->right, right->left);//从根节点开始就开始对称了。

    }

};
剑指Offer 文章被收录于专栏

剑指offer的解析结合

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 12:05
点赞 评论 收藏
分享
合不合适,我自己说了才算
码农索隆:hr:“真执着啊,来我公司当法人吧”
点赞 评论 收藏
分享
认真搞学习:这么良心的老板真少见
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务