leetcode-java-110. Balanced Binary Tree

LeetCode 参考 Java版本 LeetCode 400题目 Java版本 (LeetCode is the platform to help you enhance your skills, expand your knowledge and prepare for technical interviews.) 立即下载
/*
平衡二叉树:它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1
1.递归判断二叉树是否是平衡二叉树
2.递归找二叉树高度,求高度也是用递归
    递归停止条件:
    递归到叶子节点时终止,即root.left==null && root.right == null时,返回1;root==null时,返回0。
 */
 public class Solution {
     public boolean isBalanced(TreeNode root) {
         if(root == null) {
             return true;
         }

         int l = height(root.left);
         int r = height(root.right);

         //若本节点满足平衡二叉树,判断左右子树是否满足
         if(l-r >= -1 && l-r <= 1) {
             return isBalanced(root.left) && isBalanced(root.right);
         } else {
             return false;
         }
     }

     public int height(TreeNode root) {
         int leftHeight,
             rightHeight;

         if(root == null) {
             return 0;
         }

         if(root.left == null && root.right == null) {
             return 1;
         }
         leftHeight = height(root.left);
         rightHeight = height(root.right);

         return leftHeight>=rightHeight ? leftHeight+1:rightHeight+1;
     }
 }
风力发电机缺陷检测平台 风力发电机缺陷检测平台相关内容展示 阅读详情

相关推荐

CMAC算法原理

2、K1 通过以下运算导出:若 L 的最高有效位等于 0,则 K1 是 L 的左移 1 位。3、K2 通过如下运算导出:若 K1 的最高有效位等于 0,则 K2 是 K1 的左移 1 位。采用了 AES 算法中的类似 CBC 模式的加密方式,即对前一个分组的密文与当前分组的明文进行异或操作后在加密,2、分块处理:首先将消息分成多个固定长度的块,若消息长度不是块大小的倍数,则可以使用填充来将其填充到合适的大小。1、子密钥计算,通过主密钥生成子密钥(key1,key2),子密钥用于最后一个块处理;

sky的博客 1659

平衡二叉树详解

平衡二叉树(Balanced Binary Tree)又被称为AVL树(有别于AVL算法),且具有以下性质:它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。这个方案很好的解决了二叉查找树退化成链表的问题,把插入,查找,删除的时间复杂度最好情况和最坏情况都维持在O(logN)。但是频繁旋转会使插入和删除牺牲掉O(logN)左右的时间,不过相对二叉查找树来说,时间上稳定了很多。 平衡二叉树大部分操作和二叉查找树类似,主要不同在于插入删除的时候平衡二叉树的平衡可

尽量致力于发表微服务、中间件和算法等原创作品。 4万+

如何浏览与下载全球免费的地图高分辨率(亚米级)的遥感影像?

前言 如果你想使用商业卫星的高分辨遥感影像,一般价格昂贵。我们可以使用地图平台上免费的高分辨率数据。目前数据源很多,比如说google earth、天地图、四维地球、必应地图等等。这些影像统一有一个共同点就是:RGB三波段;Web地图瓦片服务。这意味着我们可以通过瓦片服务下载影像,但下载的影像只有三个波段,分别是 一.引言 二、可使用高分辨率的地图数据源 1.Google Earth影像 2.Esri World Image 3.天地图 4.必...

锐多宝的地理空间 2万+

数据结构之平衡二叉树详解

平衡二叉树(balanced binary tree)又称AVL树(Adelson-Velskii and Landis)一棵平衡二叉树或者是空树,或者是具有下列性质的二叉排序树: 1,左子树与右子树的高度之差的绝对值小于等于1; 2,左子树和右子树也是平衡二叉排序树.为了方便起见,给每个结点附加一个数字,给出该结点左子树与右子树的高度差.这个数字称为结点的平衡因子(BF).平衡因子 = 结点左子树的高度 - 结点右子树的高度根据平衡二叉树的定义,平衡二叉树上所有结点的平衡因子只

any_ways的博客 1万+

SAP采购信息记录批量维护实战:用BAPI ME_INFORECORD_MAINTAIN搞定价格等级和条件记录

本文深入解析SAP标准BAPI ME_INFORECORD_MAINTAIN在采购信息记录批量维护中的应用,特别聚焦价格等级和条件记录的技术难点。通过实战案例和代码示例,帮助用户高效处理供应商-物料价格数据,提升供应链管理效率。

weixin_42522320的博客 412

无线通信入门:3种键控法(ASK/FSK/PSK)原理图解与实战对比

本文深入解析无线通信中ASK、FSK、PSK三种基础键控法的原理与应用。通过图解对比,阐明幅移键控(ASK)简单低成本但抗干扰差,频移键控(FSK)稳健且应用广泛,相移键控(PSK)高效但复杂。文章结合实战场景,为物联网和嵌入式开发者在选型时提供关键指导,帮助平衡数据速率、成本、功耗与抗干扰需求。

weixin_29274969的博客 190

[数据结构和算法003]二叉搜索树(Binary Sort Tree)和二叉平衡树(Balanced Binary Tree)

为空树或者具有下列性质的二叉树:①左子树不空:则左子树所有节点小于根结点;②右子树不空:则右子树所有的结点大于根结点;③左右子树也分别为二叉搜索树。当中序遍历一棵二叉搜索树的时候,会得到一个以结点值递增的有序序列。首先给出二叉树的结构体定义int value;//构造函数:接受一个int类型的参数val并且初始化数据域value。

1167

CloudCompare横截面工具实战:从点云切片到轮廓提取的完整流程

本文详细介绍了CloudCompare软件中Cross Section工具的核心功能与实战流程。从交互式裁剪框的精准操控,到包络线提取的参数设置与优化,再到内部轮廓提取及批量处理技巧,完整解析了如何从三维点云中高效提取建筑立面、隧道断面等关键轮廓信息,是点云数据处理与分析的实用指南。

weixin_29290963的博客 286

平衡二叉树(Balanced Binary Tree)

平衡二叉树是一种特殊的通过保持平衡性,平衡二叉树可以在最坏情况下仍然具有较好的性能,保证查找、插入和删除操作的时间复杂度为O(log n)。平衡二叉树的常用实现方法有红黑树、AVL、替罪羊树、Treap、伸展树等。

欢迎每一位朋友不吝赐教,无论是宝贵的建议还是中肯的批评,都将是我前进路上不可或缺的灯塔 1082

ComfyUI中一个超好用的变量管理类节点-KJNodes

在AI绘图中,ComfyUI的热度开始慢慢起来一些,但是这个软件在使用的过程中,需要很多连线,仅仅一个最简单的动画生成,就需要连接这么多线条,而且有些线会飞的很远,看起来就很不美观,尤其是一些复杂工作流,连接到最后自己可能已经分不太清楚到底连接好了没有。今天在研究C站的大佬们的工作流的时候,发现一个有意思的工作流,看起来大概是这种感觉:干净整洁。他用到了KJNodes这么个节点来管理变量,git上星标也不算很多,所以我想很多朋友可能还不知道,所以这里简单介绍下用法。

聚梦小课堂 7524

【测开求职】面试题:数据结构 吐血整理

本篇文章是笔者为准备研究生复试以及校招而写,因此主要针对问答,注重理解,而不在于细节计算。涵盖考研范围内的所有知识内容,读者可以先查看上面的链接走一遍数据结构的整体框架结构。其中,重点难点以及易混淆的知识点,笔者用其他近30篇文章进行了详述,在知识点处贴好了链接,有需要的可以查阅。

vector的博客 7065

Java实现LeetCode 110. Balanced Binary Tree

/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { publ...

南 墙 1万+

【计算机视觉 | 目标检测】目标检测常用数据集及其介绍(十一)

【计算机视觉 | 目标检测】目标检测常用数据集及其介绍(十一)

wzk4869的博客 739

【leetcode】110. Balanced Binary Tree【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

陈善亮的博客 676

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Java [Leetcode 110]Balanced 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 ofeverynode n...

dkk37351的博客 150

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

LeetCode-110. Balanced Binary Tree [C++][Java]

Given a binary tree, determine if it is height-balanced.

贫道绝缘子的博客 219

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

[LeetCode] 110. Balanced Binary Tree 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 ofeverynode nev...

AC616288149的博客 132

Leetcode:110. Balanced Binary Tree(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

莫名的程序猿 442

LeetCode 110. Balanced Binary Tree 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 nev...

Venom 276

Java for LeetCode 110 Balanced 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 of every node never differ ...

weixin_30492047的博客 68

LeetCode 110. Balanced Binary Tree 题解 - Java

题目链接:https://leetcode.com/problems/balanced-binary-tree/#/description 题目要求:判断一棵树是否是平衡二叉树     最初尝试使用 | 二叉树的最大深度-二叉树的最小深度 |     对于上图所示的二叉树,树的最大深度是5,最小深度是3,5-3>1,但是这棵树是一颗平衡二叉树。因此上述方法不正确。

xiaoyi357的博客 539

(Java)leetcode-110 Balanced Binary Tree(平衡二叉树)

两种方法求解:自上而下的暴力法,与自下而上的优雅法

不思量 316

【LeetCode】 110. Balanced Binary Tree 平衡二叉树(Easy)(JAVA)

【LeetCode】 110. Balanced Binary Tree 平衡二叉树(Easy)(JAVA) 题目地址: https://leetcode.com/problems/balanced-binary-tree/ 题目描述: Given a binary tree, determine if it is height-balanced. For this problem, a heig...

qq_16927853的博客 243
上一篇: leetcode-java-257. Binary Tree Paths
下一篇: leetcode-java-377. Combination Sum IV
github_34514750
博客等级 码龄11年 44粉丝 198原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值