C++/代码:

对称的二叉树

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

C++/代码:

class Solution {
public:
    bool isSymmetrical(TreeNode* pRoot) {
        if (!pRoot) return true;
        return dfs(pRoot->left,pRoot->right);
    }
    bool dfs(TreeNode* p1, TreeNode* p2) {
        if (!p1 || !p2) return !p1 && !p2; //一个为空时,返回false,两个为空时,返回true
        if (p1->val != p2->val) return false; //判定值是否相同
        return dfs(p1->left,p2->right) && dfs(p2->left,p1->right);
    }
};
全部评论

相关推荐

03-13 16:51
已编辑
门头沟学院 硬件开发
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务