zoukankan      html  css  js  c++  java
  • Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never diffe

    class TreeNode {
         int val;
         TreeNode left;
         TreeNode right;
         TreeNode(int x) { val = x; }
     }
    public class Solution {
        public boolean isBalanced(TreeNode root) {
            if(root==null)return true;
            int left=treeDepth(root.left);
            int right=treeDepth(root.right);
            if(Math.abs(left-right)<=1){//条件
                if(isBalanced(root.left)&&isBalanced(root.right))//递归调用isBanlianced(root);
                    return true;
            }
            return false;
            
        }
    
        private int treeDepth(TreeNode root) {//求树的深度
            // TODO Auto-generated method stub
            if(root==null)return 0;
            
            return Math.max(treeDepth(root.right), treeDepth(root.left))+1;
        }
    }
  • 相关阅读:
    Redis 分布式锁
    Angular VS Blzaor
    Chorme 跨域的快捷解决
    旋转3角形
    .Netcore AD 操作
    .Netcore 2.2 和3.1 的模板
    Command3
    CSS Selector
    弹性盒子
    Label_strange_labels
  • 原文地址:https://www.cnblogs.com/softwarewebdesign/p/5511041.html
Copyright © 2011-2022 走看看