剑指offer:对称的二叉树
题目描述
请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。
1 public class Solution { 2 boolean isSymmetrical(TreeNode pRoot) 3 { 4 if(pRoot==null) return true; 5 return isSymmetrical(pRoot.left,pRoot.right); 6 } 7 8 private boolean isSymmetrical(TreeNode left,TreeNode right){ 9 if(left==null&&right==null) return true; 10 if(left==null||right==null) return false; 11 if(left.val==right.val) 12 //关键代码 13 return isSymmetrical(left.left,right.right)&&isSymmetrical(right.left,left.right); 14 return false; 15 } 16 }