101. 对称二叉树
给定一个二叉树,检查它是否是镜像对称的。
例如,二叉树 [1,2,2,3,4,4,3] 是对称的。
1
/ \
2 2
/ \ / \
3 4 4 3
但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的:
1
/ \
2 2
\ \
3 3
说明:
如果你可以运用递归和迭代两种方法解决这个问题,会很加分
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/symmetric-tree
1 public class SymmetricTree { 2 static class TreeNode { 3 int val; 4 TreeNode left; 5 TreeNode right; 6 TreeNode(int x) { 7 val = x; 8 } 9 } 10 11 public boolean isSymmetric(TreeNode root) { 12 if(root == null) { 13 return true; 14 } 15 return isSameTree(root.left, root.right); 16 } 17 18 public static boolean isSameTree(TreeNode root1, TreeNode root2) { 19 if(root1 == null && root2 == null) { 20 return true; 21 } 22 if(root1 == null || root2 == null) { 23 return false; 24 } 25 if(root1.val != root2.val) { 26 return false; 27 } 28 return isSameTree(root1.left, root2.right) && isSameTree(root1.right, root2.left); 29 } 30 }
无论有多困难,都坚强的抬头挺胸,人生是一场醒悟,不要昨天,不要明天,只要今天。不一样的你我,不一样的心态,不一样的人生,顺其自然吧
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步