已解答
简单
相关标签
相关企业
给你一个二叉树的根节点 root
, 检查它是否轴对称
Definition for a binary tree node.
class TreeNode(object):
def init(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
class Solution(object):
def check(self,left,right):
isSy = None
if left==None and right==None:
return True
elif left==None or right==None:
return False
else:
isSy = left.val == right.val
return self.check(left.left,right.right) and self.check(left.right,right.left) and isSy
def isSymmetric(self, root):
"""
:type root: Optional[TreeNode]
:rtype: bool
"""
递归
isSy = None
if root.left==None and root.right==None:
return True
elif root.left==None or root.right==None:
return False
else:
isSy = root.left.val == root.right.val
return self.isSymmetric(root.left) and self.isSymmetric(root.right) and isSy
必须仔细考虑一下迭代公式
return self.check(root.left,root.right)
注意这里我们需要得到的是是否对称,这个对称啊,必须是