剑指offer:判断对称二叉树

public class Solution {
    boolean trace(TreeNode root1, TreeNode root2){
        if(root1 == null && root2 == null) return true;
        if(root1 == null || root2 == null) return false;
        //if(root1 != null && root2 != null && root1.val != root2.val) return false;
        //if(root1.val != root2.val)  return false;
        /*boolean left = trace(root1.left, root2.right);
        if(left == true){
            return trace(root1.right, root2.left);
        }
        return false;
        */
        return  root1.val == root2.val && trace(root1.left, root2.right) && trace(root1.right, root2.left);
    }
    boolean isSymmetrical(TreeNode pRoot)
    {
        return trace(pRoot,pRoot);
    }
}

猜你喜欢

转载自blog.csdn.net/raylrnd/article/details/82714092