剑指offer---对称的二叉树

来源:互联网 发布:编程语言c 怎么用 编辑:程序博客网 时间:2024/06/03 04:44

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

java

/*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 isSym(pRoot.left, pRoot.right);    }    private boolean isSym(TreeNode p1, TreeNode p2) {        if (p1 == null && p2 == null) {            return true;        }        if (p1 == null || p2 == null) {            return false;        }        if (p1.val != p2.val) {            return false;        }        return isSym(p1.left, p2.right) && isSym(p1.right, p2.left);    }}


原创粉丝点击