LeetCode——Symmetric Tree

Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center).

For example, this binary tree is symmetric:

    1
   / \
  2   2
 / \ / \
3  4 4  3

But the following is not:

    1
   / \
  2   2
   \   \

3 3

中文:给定一二叉树,检查它是否是它自己的镜像(比如,以中心对称)。

递归:

	public boolean isSymmetric(TreeNode root) {
		if(root == null)
			return true;
		return isSymmetric(root,root);
	}
	public boolean isSymmetric(TreeNode left,TreeNode right) {
		if(left == null && right == null)
			return true;
		else if(left == null || right == null)
			return false;
		return left.val == right.val && isSymmetric(left.left,right.right) && isSymmetric(left.right,right.left);
	}



posted @ 2014-11-13 20:15  phlsheji  阅读(183)  评论(0编辑  收藏  举报