题目
给定一个二叉树,检查它是否是镜像对称的。
思路分析
判断二叉树是否镜像对称==>(左子树的右节点等于右子树的左节点)&&(右子树的右节点等于左子树的左节点)
代码
代码语言:javascript复制 public boolean isSymmetric(TreeNode root) {
if (root == null){
return true;
}
return isMirror(root.left, root.right);
}
private boolean isMirror(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 isMirror(t1.left,t2.right) && isMirror(t1.right, t2.left);
}