思路:先比较根节点,然后左边子树,右边子树。
把一棵树变成两个部分比较,右边子节点比较右边子树的左节点。
/*
public class TreeNode {
int val = 0;
TreeNode left = null;
TreeNode right = null;
public TreeNode(int val) {
this.val = val;
}
}
*/
public class Solution {
boolean isSymmetrical(TreeNode pRoot)
{
if(pRoot==null) return true;
return isSymmetrical(pRoot.left,pRoot.right);
}
boolean isSymmetrical(TreeNode t1,TreeNode t2){
if(t1==null&&t2==null) return true;
if(t1==null||t2==null) return false;
if(t1.val!=t2.val) return false;
return isSymmetrical(t1.left,t2.right)&&isSymmetrical(t1.right,t2.left);
}
}