【题目】
请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。
【代码】
//判断是否是对称的二叉树
public static boolean isSymmetrical(Node root){
if(root==null){
return true;
}
return isSymmetrical(root.left,root.right);
}
private static boolean isSymmetrical(Node n1, Node n2) {
if(n1==null&&n2==null){
return true;
}
if(n1==null||n2==null){
return false;
}
if(n1.value!=n2.value){
return false;
}
return isSymmetrical(n1.left, n2.right)&&
isSymmetrical(n1.right,n2.left);
}