力扣110. 平衡二叉树

news/2024/5/19 16:24:45

在这里插入图片描述

思路:与二叉树最大高度类似,但是这里需要返回 -1 的高度来标识不是平衡二叉树,判断左右子树的高度相差大于1则不平衡,否则就是平衡。


class Solution {public boolean isBalanced(TreeNode root) {int ans = func(root);if(ans > -1) {return true;}return false;}public int func(TreeNode root) {if(root == null) return 0;//如果不是平衡二叉树,返回-1作为信号int leftNum = func(root.left);if(leftNum == -1) return -1;int rightNum = func(root.right);if(rightNum == -1) return -1;//左右相差大于1则不是平衡二叉树if(Math.abs(leftNum-rightNum) > 1) {return -1;}else {return 1+ Math.max(leftNum, rightNum); //子树最大高度}}  
}

http://www.mrgr.cn/p/06737748

相关文章

最强开源大模型Meta LIama3抢先在线体验!

4月19日Facebook母公司Meta重磅推出了其迄今最强大的开源人工智能(AI)模型——Llama 3。模型分为两种规模:8B 和 70B 参数,每种规模都提供预训练基础版和指令调优版。最强开源大语言模型Meta LIama3可以在线体验啦! G…

【运输层】TCP 的流量控制和拥塞控制

目录 1、流量控制 2、TCP 的拥塞控制 (1)拥塞控制的原理 (2)拥塞控制的具体方法 1、流量控制 一般说来,我们总是希望数据传输得更快一些。但如果发送方把数据发送得过快,接收方就可能来不及接收&#x…

TensorFlow文件读取 --TFRecords文件

TFRecords文件 是一种二进制文件,能够很好的利用内存,更方便复制和移动,并且不需要单独的标签文件 使用步骤 1)获取数据 2)将数据填入到Example协议内存块(protocol buffer) 3)将协…

vis.js本地化折线图

代码案例<!doctype html> <html> <head><title>Timeline</title><script type="text/javascript" src="https://unpkg.com/vis-timeline@latest/standalone/umd/vis-timeline-graph2d.min.js"></script><lin…

【每周例题】力扣 C++ 分割字符串

分割字符串 题目 题目分析 1.先确定用容器存储,容器的存储结构如下图所示: 2.这个题目的话,第一反应应该是用到动态规划,下面是动态规划的模板:res = [] ans = []def backtrack(未探索区域, res, path):if 未探索区域满足结束条件:res.add(ans) # 深度拷贝returnfor 选择 …

Midjourney 实现角色一致性的新方法

AI 绘画的奇妙之处&#xff0c;实乃令人叹为观止&#xff01;就像大千世界中&#xff0c;寻不见两片完全相同的树叶一般&#xff0c;AI 绘画亦复如是。同一提示之词&#xff0c;竟能催生出千变万化的图像&#xff0c;使得AI所绘之作&#xff0c;宛如自然之物般独特&#xff0c;…

内网信息收集命令汇总

查看网络配置信息 ipconfig/all查看操作系统及软件信息查看操作系统和版本信息 systeminfo | findstr /B /C:"OS"查看系统体系结构 echo %PROCESSOR_ARCHITECTURE%查看安装的软件及版本、路径等 wmic product get name, versionpowershell "Get-WmiObject -clas…

上位机图像处理和嵌入式模块部署(智能硬件的介绍)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 目前&#xff0c;用上位机软件虽然可以部署项目&#xff0c;但是它本身有自己的缺点&#xff0c;那就是稳定性差、价格贵。稳定性这部分&#xff0…

操作系统——进程

进程定义 是计算机中已经运行的程序是系统进行资源分配和调度的一个独立单位。 进程的特性 独立性&#xff1a;进程在内存中可以独立寻址&#xff0c;每个进程都有一个独立的堆栈空间。动态性&#xff1a;进程在执行过程中可以申请资源、使用资源、释放资源。并发性&#xf…

Nacos配置管理-微服务配置拉取

创造来源&#xff1a;在学习微服务这部分内容的时候遇到很多bug&#xff0c;改了又改&#xff0c;最后改好了。以下是我修改后实现配置拉取的代码&#xff0c;这里我使用了鉴权&#xff0c;所以配置里面有使用到下面的代码&#xff0c;如果没有配置鉴权则删掉下面代码。新版本的…

v-pre, v-once, v-cloak

v-pre,是将元素内的内容全部渲染出来 最常见的就是显示双大括号标签及内容 上面的代码输出为: 直接将元素的内的内容直接渲染出来 v-once是用来将元素的值只进行一次变化,仅渲染元素和组件一次,并跳过之后的更新 上述代码中,当经过了两秒输出为: <div v-once>这个元…

智慧水务能效管理系统平台/地下污水厂配电系统电气安全设计

安科瑞电气薛瑶瑶18701709087 1、引言 地下水污厂在城市建设中扮演着重要的角色,负责对城市污水和废物进行处理和排放。然而,由于地下水污厂中存在着许多危险因素,如有害气体、液体和固体废物等,因此要保证电气安全。电气安全系统是地下水污厂安全生产的重要保障措施之一,包括…

删除顺序表L中下标为p(0≤ p ≤length-1)的元素,成功返回1,否则返回0,并将待删除的元素的值赋给e。

/******************************************************** name : DelElement* function : (笔试题)删除顺序表L中下标为p(0<≤ p ≤length-1)的元素,* 成功返回1,否则返回0,并将待删除的元素的值赋给e。* argument* @p :需要…

什么是 PCIe 及其工作原理?

什么是外围组件互连 Express (PCIe)&#xff1f; 外围组件互连 Express (PCIe) 是一种高速串行计算机扩展总线标准&#xff0c;可将设备连接到主板。 它于 2004 年首次推出&#xff0c;作为以前 PCI 和 AGP 方式的替代。 PCIe 允许处理器和各种扩展卡&#xff08;例如显卡、声…

Linux系列教程——Linux基本权限、Linux特殊权限、LinuxACL控制、Linux输入输出

@目录1 Linux基本权限1.权限基本概述1.什么是权限?2.为什么要有权限?3.权限与用户之间的关系?4.权限中的rwx分别代表什么含义?2.权限设置示例1.为什么要设定权限,我们又如何修改一个文件的权限?2.使用chmod设定权限示例3.权限设置案例3.权限设置案例4.属主属组设置2 Linu…

Redis系列之——持久化

一 持久化的作用 1.1 什么是持久化 redis的所有数据保存在内存中,对数据的更新将异步的保存到硬盘上 1.2 持久化的实现方式 快照:某时某刻数据的一个完成备份,-mysql的Dump-redis的RDB 写日志:任何操作记录日志,要恢复数据,只要把日志重新走一遍即可-mysql的 Binlog-…

【VTKExamples::Meshes】第十五期 FillHoles

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享VTK样例FillHoles,并解析接口vtkFillHolesFilter,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~…

两个不等式,几个大数定律,和中心极限定理

I,不等式 2,大数定律特注,该定理的证明一般假设方差有限,然后证明此情形。事实上,方差无限也成立,但比较精巧,一般书上不给证明。