leetcode101. Symmetric Tree判断一棵树是否是镜像二叉树

思路:转化为求两个二叉树是否是镜像二叉树

class Solution {
    //判断一颗二叉树是否是镜像的
    public boolean isSymmetric(TreeNode root) {
        if(root==null){
        	return true;
        }
        return isSymmetric(root.left, root.right);
    }
    //以root1为根的二叉树与以root2为根的二叉树是否是镜像二叉树。
    private boolean isSymmetric(TreeNode root1,TreeNode root2){
    	if(root1==null && root2==null){
    		return true;
    	}
    	if(root1==null || root2==null || root1.val!=root2.val){
    		return false;
    	}
    	return isSymmetric(root1.left, root2.right) && isSymmetric(root1.right, root2.left);
    }
}

你可能感兴趣的:(leetcode)