[LeetCode]101. Symmetric Tree

来源:互联网 发布:八爪鱼按摩淘宝 编辑:程序博客网 时间:2024/04/29 07:45

题意: 给你一棵二叉树,判断是否是镜面对称
思路: 从根节点开始,依次向两边展开,左右分别相等之后,分别判断左节点和右节点的(左孩子和右孩子)和(右孩子和左孩子)【镜面对称】,发现不相等或者为空,则返回错误
代码:

    public boolean isSymmetric(TreeNode root) {        if(root == null){            return true;        }        return compare(root.left, root.right);    }    public boolean compare(TreeNode left, TreeNode right){        if((left == null && right != null)||(left != null && right == null)){            return false;        }        if(left == null && right == null){            return true;        }        if(left.val != right.val){            return false;        }        boolean left_ = compare(left.left, right.right);        boolean right_ = compare(left.right, right.left);        return left_ && right_;    }
0 0
原创粉丝点击