这道题目,如果不是和100题一起做,还难以发现它们的相似性。检查左右两棵树是否对称,三种基本判断返回条件。与100不同就是递归参数不同。
public class Solution {
public boolean isSymmetric(TreeNode root) {
if(root == null) return true;
return isSymmetric(root.left,root.right);
}
public boolean isSymmetric(TreeNode left, TreeNode right) {
if(left == null && right == null) return true;
if(left == null || right == null) return false;
if(left.val != right.val) return false;
else {
return isSymmetric(left.left,right.right) && isSymmetric(left.right,right.left);
}
}
}