对称的二叉树
请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。
/* 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 || (pRoot.left == null && pRoot.right == null)) return true; return mirror(pRoot.left, pRoot.right); } boolean mirror(TreeNode node1, TreeNode node2) { if (node1 == null && node2 == null) return true; if (node1 != null && node2 != null) { return node1.val == node2.val && mirror(node1.left, node2.right) && mirror(node1.right, node2.left); } return false; } }
作者:Pickle
声明:对于转载分享我是没有意见的,出于对博客园社区和作者的尊重一定要保留原文地址哈。
致读者:坚持写博客不容易,写高质量博客更难,我也在不断的学习和进步,希望和所有同路人一道用技术来改变生活。觉得有点用就点个赞哈。