`
blue2048
  • 浏览: 182634 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[leetcode]Balanced Binary Tree - java 递归

阅读更多
/**

 * Definition for binary tree

 * public class TreeNode {

 *     int val;

 *     TreeNode left;

 *     TreeNode right;

 *     TreeNode(int x) { val = x; }

 * }

 */

public class Solution {

    public boolean isBalanced(TreeNode root) {

        int b = b(root);

        if(b==-1){

            return false;

        }

        return true;

    }



    public int b(TreeNode node){

        if(node==null){

            return 0;

        }

        int lb = b(node.left);

        int rb = b(node.right);

        if(lb==-1 || rb==-1 || Math.abs(lb-rb)>1){

            return -1;

        }

        return 1+Math.max(lb,rb);

    }

}

 

分享到:
评论

相关推荐

    leetcode的题目:Balanced Binary Tree

    在LeetCode的"Balanced Binary Tree"题目中,通常要求判断给定的二叉树是否是平衡的。这个问题可以通过递归或迭代的方式来解决。递归方法是分别检查左子树和右子树是否平衡,以及它们的高度。迭代方法则可以使用层次...

    leetcode110-BinaryTree_HeightBalanced:力扣110

    在LeetCode的第110题“Binary Tree Height Balanced”中,我们被要求判断一个二叉树是否是平衡二叉树。平衡二叉树是一种特殊的二叉树结构,它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡...

    leetcode java

    - 计算二叉树的最大深度(Maximum Depth of Binary Tree)考察递归的使用。 - 平衡二叉树(Balanced Binary Tree)问题需要检查一棵树是否是平衡的。 **位操作(Bit Manipulation)** 位操作是高级的编程技能,涉及...

    leetcodelintcode差异-LeetcodeJava:LeetcodeJava

    leetcode lintcode差异 Lintcode 解题思路记录 Table of Contents Linked List Convert Sorted List to Binary Search Tree Given a singly linked list where elements are sorted in ascending order, convert it ...

    python-leetcode面试题解之第110题平衡二叉树-题解.zip

    本压缩包文件聚焦于Python语言和LeetCode上的第110题——“平衡二叉树”(Balanced Binary Tree)。平衡二叉树是一种特殊的二叉树结构,它的左子树和右子树的高度差不超过1,并且左右子树都是平衡二叉树。 首先,...

    LeetCode-js:用 JavaScript 解决 LeetCode 问题

    2. **二叉树**:二叉树问题是算法面试中的常客,例如“二叉树的遍历”(Preorder, Inorder, Postorder Traversal)、“判断是否为平衡二叉树”(Balanced Binary Tree)等。JavaScript 中可以用对象来表示节点,通过...

    LeetCode

    1. **数据结构**:数组(Array)、链表(LinkedList)、栈(Stack)、队列(Queue)、哈希表(HashMap)、堆(Heap)、二叉树(Binary Tree)、平衡二叉树(Balanced BinaryTree)、红黑树(Red-Black Tree)等。...

    AVL树概述与讲解.pdf

    - **平衡二叉树** (Balanced Binary Tree, BBT): 又称AVL树,是一种特殊的二叉搜索树,其中每个节点的左右子树都是平衡的,且两者的高度差不超过1。 #### 3. 关键基本操作的具体实现 - **旋转操作**: - **左旋** ...

    平衡二叉树1

    平衡二叉树(Balanced Binary Tree)是二叉树的一种特殊类型,它具有良好的平衡特性,即左右子树的高度差的绝对值不超过1。这种平衡使得二叉树在进行查找、插入和删除等操作时能保持较高的效率。 在给定的问题中,...

    AlgoCS:该存储库全部关于数据结构,其实现,问题和解决方案

    算法是用Java实现的。 将来我会尝试添加C ++版本。 如果您想这样做或使用任何其他语言,请随时提出请求。 创建资源库的主要目的是学习算法,并为想要提高问题解决能力的人员提供帮助。 我将尝试定期添加新算法。 ...

Global site tag (gtag.js) - Google Analytics