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);
    }
};
全部评论

相关推荐

点赞 评论 收藏
分享
no_work_no_life:深圳,充电宝,盲猜anker
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务