• 110. Balanced Binary Tree


    Given a binary tree, find its maximum depth.

    The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.

    Note: A leaf is a node with no children.

    Example:

    Given binary tree [3,9,20,null,null,15,7],

        3
       / 
      9  20
        /  
       15   7

    return its depth = 3.

    /**
     * Definition for a binary tree node.
     * public class TreeNode {
     *     int val;
     *     TreeNode left;
     *     TreeNode right;
     *     TreeNode(int x) { val = x; }
     * }
     */
    class Solution {
        public boolean isBalanced(TreeNode root) {
            if(root == null) return true;
            int l = depth(root.left);
            int r = depth(root.right);
            return Math.abs(l - r) < 2 && isBalanced(root.left) && isBalanced(root.right);
        }
        public int depth(TreeNode root){
            if(root == null) return 0;
            return Math.max(depth(root.left), depth(root.right)) + 1;
        }
    }

    在maxDepth of BST的基础上进一步做文章。

  • 相关阅读:
    第三方应用调用应用市场和唤醒APP
    tp5 输入域名即访问指定页面
    反射概述(静态 VS 动态语言)
    自定义注解
    元注解
    内置注解
    什么是注解
    线程小结(代码)
    线程池
    信号灯法
  • 原文地址:https://www.cnblogs.com/wentiliangkaihua/p/11432879.html
Copyright © 2020-2023  润新知