zoukankan      html  css  js  c++  java
  • 【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)
           

  • 相关阅读:
    codeforces——模拟
    线段树水题
    编码格式分类: 前后端传递数据的编码格式contentType
    爬虫之爬取求职小网站
    auth 模块使用篇
    后端获取前端的多个数据用getlist
    字符串值的替换
    单例的5种开启方式
    forms 组件的功能和使用
    cookie和session 的初步介绍
  • 原文地址:https://www.cnblogs.com/kwangeline/p/5953480.html
Copyright © 2011-2022 走看看