题目描述
给定一棵二叉树,判断琪是否是自身的镜像(即:是否对称)
例如:下面这棵二叉树是对称的
1↵ / ↵ 2 2↵ / / ↵3 4 4 3↵
下面这棵二叉树不对称。
1↵ / ↵ 2 2↵ ↵ 3 3
思路:
代码
//判断二叉树是否是镜像的public boolean isSymmetric (TreeNode root) {if(root==null)return true;return solve(root.left,root.right);}private boolean solve(TreeNode left, TreeNode right) {if(left==null&&right==null)return true;if(left==null||right==null)return false;if(left.val!=right.val)return false;boolean flag1 = solve(left.left,right.right);boolean flag2 = flag1?solve(left.right,right.left):false;return flag1&&flag2;}
