美文网首页
2019-08-23剑指 对称的二叉树

2019-08-23剑指 对称的二叉树

作者: mztkenan | 来源:发表于2019-08-23 18:09 被阅读0次

    10min,找不到错误的时候还是得样例运行一下。
    基本思路就是,比较两个子树是否对称,子树对称的标准是
    1.root1.val==root2.val
    2.root1.left==root2.right, root1.right==root2.left
    另外的思路是利用stack,不断加成对的节点加入stack,然后进行比较

    class Solution:
        def isSymmetrical(self, pRoot):
            if not pRoot:return True  #这里又忘了加not
            return self.dfs(pRoot.left,pRoot.right)
    
        def dfs(self,pRoot1,pRoot2):
            if not pRoot1 and not pRoot2:return True
            if not pRoot1 or not pRoot2:return False
            if pRoot1.val==pRoot2.val:
                return self.dfs(pRoot1.left,pRoot2.right) and self.dfs(pRoot1.right,pRoot2.left)
            else:return False
    

    相关文章

      网友评论

          本文标题:2019-08-23剑指 对称的二叉树

          本文链接:https://www.haomeiwen.com/subject/xnutectx.html