题解 | #对称的二叉树#
对称的二叉树
http://www.nowcoder.com/practice/ff05d44dfdb04e1d83bdbdab320efbcb
# -*- coding:utf-8 -*-
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
def isSymmetricalRec(self, left, right):
if left is None and right is None:
return True
if left is None or right is None:
return False
if left.val != right.val:
return False
lf = self.isSymmetricalRec(left.left, right.right)
rf = self.isSymmetricalRec(left.right, right.left)
return lf and rf
def isSymmetrical(self, pRoot):
# write code here
if not pRoot:
return True
return self.isSymmetricalRec(pRoot.left, pRoot.right)
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
def isSymmetricalRec(self, left, right):
if left is None and right is None:
return True
if left is None or right is None:
return False
if left.val != right.val:
return False
lf = self.isSymmetricalRec(left.left, right.right)
rf = self.isSymmetricalRec(left.right, right.left)
return lf and rf
def isSymmetrical(self, pRoot):
# write code here
if not pRoot:
return True
return self.isSymmetricalRec(pRoot.left, pRoot.right)