对称的二叉树

来源:互联网 发布:淘宝上足球鞋正品店铺 编辑:程序博客网 时间:2024/06/05 23:49

题目

请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。

思路

递归
    1
  2   2
 3 4 4 3
比较左子树的左节点和右子树的右节点
比较左子树的右节点和右子树的左节点

public class Solution {    boolean isSymmetrical(TreeNode pRoot)    {        if(pRoot==null)            return true;        return sameVal(pRoot.left, pRoot.right);    }    boolean sameVal(TreeNode left, TreeNode right){        if(left==null&&right==null)            return true;        if(left!=null&&right!=null)            return left.val==right.val&&sameVal(left.right,right.left)&&sameVal(left.left,right.right);        return false;    }}