zoukankan      html  css  js  c++  java
  • balcanced-binary-tree

    题目描述

    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 ofevery node never differ by more than 1.

    /**
     * Definition for binary tree
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     *     TreeNode *right;
     *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     * };
     */
    class Solution {
    public:
        int dept(TreeNode *root) {
            if(root==NULL)	return 0;
            if(root->left==NULL && root->right==NULL) 
                return 1;
            return max(dept(root->left),dept(root->right))+1;
        }
        
        bool isBalanced(TreeNode *root) {
            if(root==NULL)	return true;
            int x=dept(root->left)-dept(root->right);
            if(abs(x)>1)
                return false;
            else
                return isBalanced(root->left) && isBalanced(root->right);
        }
    };
    

      

    拥抱明天! 不给自己做枷锁去限制自己。 别让时代的悲哀,成为你人生的悲哀。
  • 相关阅读:
    Eloquent ORM模型中添加自定义值
    wget
    带坑的几道PHP面试题
    php字符型转整型
    SELECT 1
    GD库
    Windows下.svn文件夹的最简易删除方法(附linux)
    svn 撤销修改
    mysql应用基本操作语句(转)
    i春秋broken
  • 原文地址:https://www.cnblogs.com/dd2hm/p/7507183.html
Copyright © 2011-2022 走看看