• 【leetcode❤python】110. Balanced Binary Tree


    #-*- coding: UTF-8 -*-
    #平衡二叉树
    # 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):
        isbalanced=True  
        def isBalanced(self, root):
            """
            :type root: TreeNode
            :rtype: bool
            """
            if root==None:return True
            if root.left==None and root.right==None:return True
            self.dfs(root)
            return self.isbalanced
        
        def dfsDepth(self,root):
            if root==None:return 0
            leftDepth=self.dfsDepth(root.left)
            rightDepth=self.dfsDepth(root.right)
            
            return leftDepth+1 if leftDepth >rightDepth else (rightDepth+1)

        def dfs(self,root):
            if root==None:return
            leftDepth=self.dfsDepth(root.left)
            rightDepth=self.dfsDepth(root.right)
            if abs(leftDepth-rightDepth)>1:
                self.isbalanced=False
            else:
                self.dfs(root.left)
                self.dfs(root.right)
           

  • 相关阅读:
    RabbitMQ从入门到精通(一)
    MQ的架构作用
    Docker可视化管理工具
    Linux修改war包中文件
    Redis--各个数据类型最大存储量
    linux中直接修改jar包内配置文件
    脚本发布程序
    maven 安装到私服
    HTML基础 text-indent 把文字移出浏览器,隐藏起来
    HTML基础 td valign 设置文本靠上 居中 靠下
  • 原文地址:https://www.cnblogs.com/kwangeline/p/5953480.html
Copyright © 2020-2023  润新知