题解 | #对称的二叉树#

对称的二叉树

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

使用递归的方式,如果是镜像树,左子树和右子树节点值相同,且左子树的左节点与右子树的右节点相等,左子树的右节点和右子树的左节点相等。

    boolean isSymmetrical(TreeNode pRoot) {
        if(pRoot==null){
            return false;
        }
        return Symmerical(pRoot.left,pRoot.right);

    }
    public boolean Symmerical(TreeNode Lroot,TreeNode Rroot){
    
        if(Lroot!=null&&Rroot!=null){
            if(Lroot.val==Rroot.val){
                return Symmerical(Lroot.left,Rroot.right)&&Symmerical(Lroot.right,Rroot.left);
            }
            //不为空但是值不相等情况
            else{
                return false;
            }

        }
        //其中一个节点为空
        else if(Lroot!=null&&Rroot==null||Rroot!=null&&Lroot==null){
            return false;

        }
        return true;
    }

}
全部评论

相关推荐

01-14 19:01
吉首大学 Java
黑皮白袜臭脚体育生:加个项目吧,一般需要两个项目一业务一轮子呢,简历统一按使用了什么技术实现了什么功能解决了什么问题或提升了什么性能指标来写
点赞 评论 收藏
分享
明天不下雨了:我靠2022了都去字节了还什么读研我教你****:你好,本人985电子科大在读研一,本科西南大学(211)我在字节跳动实习过。对您的岗位很感兴趣,希望获得一次投递机会。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务