给你一个二叉树的根节点 root
, 检查它是否轴对称。
public boolean isSymmetric(TreeNode root){
return check(root, root);
}
public boolean check(TreeNode p. TreeNode q){
if(p == null && q == null) return true;
if(p == null || q == null) return false;
// 这个只能是p或q有一个是null,才会返回false,
// 因为都是null的话,已经在上一个if判断中返回true了
return p.val == q.val && check(p.left, q.right) && check(p.right, q.left);
}