题目描述
请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。
解题思路
就好像一串葡萄有左右两小串葡萄,把两小串葡萄拆下来对比葡萄大小。
Python代码
class Solution:
def isSymmetrical(self, pRoot):
if not pRoot:
return True
return self.recursiveTree(pRoot.left, pRoot.right)
def recursiveTree(self, left, right):
if not left and not right:
return True
if not left or not right:
return False
if left.val == right.val:
return self.recursiveTree(left.left, right.right) and self.recursiveTree(left.right, right.left)
return False