Check if a binary tree is balanced or not. This solution is from the discuss board. Much better than mine.
/**
* 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) {
return height(root) != -1;
}
private int height(TreeNode root)
{
if(root == null)
return 0;
int leftHeight = height(root.left);
if(leftHeight == -1)
return -1;
int rightHeight = height(root.right);
if(rightHeight == -1)
return -1;
if(Math.abs(leftHeight - rightHeight) > 1)
return -1;
return 1 + Math.max(leftHeight, rightHeight);
}
}
分享到:
相关推荐
在LeetCode的"Balanced Binary Tree"题目中,通常要求判断给定的二叉树是否是平衡的。这个问题可以通过递归或迭代的方式来解决。递归方法是分别检查左子树和右子树是否平衡,以及它们的高度。迭代方法则可以使用层次...
java java_leetcode-110-balanced-binary-tree
python python_leetcode题解之110_Balanced_Binary_Tree
javascript js_leetcode题解之110-balanced-binary-tree.js
至于提供的压缩包文件`BinaryTree_HeightBalanced-master`,它很可能包含了该问题的解决方案源代码,可能是用Python或其他编程语言实现的。解压后,你将能够看到具体的实现细节,包括如何创建二叉树节点、如何进行...
29. Convert Sorted Array to Balanced Binary Search Tree:将有序数组转换成平衡的二叉搜索树。 30. Convert Sorted List to Balanced Binary Search Tree:将有序链表转换成平衡的二叉搜索树。 31. Binary Tree ...
- **Balanced Binary Tree**:判断一个二叉树是否是平衡的。 - **Path Sum**:判断是否存在一条路径,其节点值之和等于给定的目标值。 - **Binary Tree Depth Order Traversal**:二叉树的深度优先遍历。 - **...
* [Binary Search Tree](https://github.com/kamyu104/LeetCode#binary-search-tree) * [Breadth-First Search](https://github.com/kamyu104/LeetCode#breadth-first-search) * [Depth-First Search]...
leetcode 答案leetcode-java leetcode.com 的 Java 答案 ================索引================ com.leetcode.array Search a ...com.leetcode.list ...Balanced Binary Tree Maximum Depth of Binary Tree Same Tree
leetcode 分类 LeetCode Progress 128/154 Other Solutions C++,有详细思路解释 python,部分有解释 Java,部分有解释 ...norvig神牛Python代码写的很飘逸,果然是有LISP内功的人!...Balanced Binary Tree Binar
左程云leetcode 数据结构和算法学习笔记 一、简介 1. 2. 3. 4. 5. 6. 二、数据结构 1. 二维数组(Array2D) 位数组(Bit Set) 静态数组(Fixed Size Array) 有序表(Ordered Array) 2. 队列(Queues) (后进先出...
左程云leetcode 数据结构和算法学习笔记 一、简介 1. 2. 3. 4. 5. 6. 二、数据结构 1. 二维数组(Array2D) 位数组(Bit Set) 静态数组(Fixed Size Array) 有序表(Ordered Array) 2. 队列(Queues) (后进先出...
leetcode 和 oj 完整的面试准备文档 - 基于 GooglePrep.txt 推荐书籍 编程面试曝光:找到下一份工作的秘密,John Mongan、Eric Giguere、Noah Suojanen、Noah Kindler、John Wiley & Sons 算法导论,Thomas H. ...
leetcode旋转 Leetcode 视频链接待补充:triangular_flag: 打卡 题目类型 题目编号 ...Balanced Binary Tree Leetcode #110 Day6 AVL Tree Leetcode #108 Day7 AVL Tree Rotation 补充AVL Tree旋转操作
- 平衡二叉树(Balanced Binary Tree)问题需要检查一棵树是否是平衡的。 **位操作(Bit Manipulation)** 位操作是高级的编程技能,涉及到位运算。 - "只出现一次的数字"(Single Number)题目要求找出数组中只...
balanced binary search tree - 对于给定的初始值,自动生成平衡二叉搜索树。 [] 算法 BFS JS实现2 Leetcode问题解决 问题 洪水填充问题(已解决):油漆问题。 给定一个由矩阵表示的图像,绘制一个像素 (src) 和...
1.5 二叉树是否平衡Given a binary tree, determine if it is height-balanced.For this prob
本压缩包文件聚焦于Python语言和LeetCode上的第110题——“平衡二叉树”(Balanced Binary Tree)。平衡二叉树是一种特殊的二叉树结构,它的左子树和右子树的高度差不超过1,并且左右子树都是平衡二叉树。 首先,...
28. Balanced Binary Tree:判断二叉树是否为平衡二叉树。 29. Convert Sorted Array to Binary Search Tree:将有序数组转换为高度平衡的二叉搜索树。 30. Convert Sorted List to Binary Search Tree:将有序链表...