首页 > 学院 > 开发设计 > 正文

对称的二叉树

2019-11-08 02:16:55
字体:
来源:转载
供稿:网友
题目描述

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

IDEA

对称二叉树满足:

1.二叉树为null

2.或者左子树t1,右子树t2对称:节点相等,t1的左子树和t2的右子树相等。

CODE

/*public class TreeNode {    int val = 0;    TreeNode left = null;    TreeNode right = null;    public TreeNode(int val) {        this.val = val;    }}*/public class Solution {    boolean isSymmetrical(TreeNode PRoot)    {        if(pRoot==null)            return true;        return isCommon(pRoot.left,pRoot.right);    }    boolean isCommon(TreeNode t1,TreeNode t2){        if(t1==null&&t2==null)            return true;        if(t1!=null&&t2!=null)            return (t1.val==t2.val)&&isCommon(t1.left,t2.right)&&isCommon(t1.right,t2.left);        return false;    }}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表