101. 对称二叉树

2022-05-06 15:50:39 浏览数 (1)

给定一个二叉树,检查它是否是镜像对称的。

代码语言:javascript复制
class Solution {
    /**
    递归就完事了
        如果同时为空,走到最后了 true
        一个为空  返回false
        值不一样   false
        继续分别遍历他们的 左边右边   右边左边是否相同
     */
    public boolean isSymmetric(TreeNode root) {
           return  is(root,root);
    }


    public boolean is(TreeNode rootLeft,TreeNode rootRight){

        if(rootRight==null&&rootLeft==null){//如果都为空,那么就是真
            return true;
        }

        if(rootLeft==null||rootRight==null){//如果一个为空一个不是空,返回假
                return false;
        }
        if(rootLeft.val!=rootRight.val){ //当前值都不为空但不相等,那么返回

                return false;

        }

           return is(rootLeft.left,rootRight.right)&&is(rootLeft.right,rootRight.left);

    }
}

0 人点赞