❤leetcode,python2❤给定一个二叉树,检查它是否是镜像对称的。

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_22795513/article/details/80776820
# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution(object):
    def isSymmetric(self, root):
        """
        :type root: TreeNode
        :rtype: bool
        """
        if root==None:
            return True
        if self.panduan(root,root) == False:
            return False
        return True
    def panduan(self,a,b):
        try:
            print a.left.val,b.right.val,'------'
            if a.left.val == b.right.val:
                if self.panduan(a.left,b.right) == False:
                    return False
            else:
                return False
        except:
            if a.left != b.right:
                return False
            else:
                print 'a.left/b.right = none'
        try:
            print a.right.val,b.left.val,'------'
            if a.right.val == b.left.val:
                if self.panduan(a.right,b.left) == False:
                    return False
            else:
                return False
        except:
            if a.right != b.left:
                return False
            else:
                print 'a.right/b.left = none'

猜你喜欢

转载自blog.csdn.net/qq_22795513/article/details/80776820