当前位置: 首页 > news >正文

满洲里网站建设南昌seo管理

满洲里网站建设,南昌seo管理,珠海商城,重庆家居网站制作公司目录题目分析递归法题外话题目来源 110. 平衡二叉树 题目分析 平很二叉树:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 二叉树节点的深度和二叉树节点的高度 递归法 递归三步曲 1.明确递归函数的参数和返回值 参数:当前传入节点。 返回值…

目录

    • 题目分析
    • 递归法
    • 题外话

题目来源
110. 平衡二叉树

题目分析

平很二叉树:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。
二叉树节点的深度和二叉树节点的高度
在这里插入图片描述

递归法

递归三步曲

  • 1.明确递归函数的参数和返回值

参数:当前传入节点。
返回值:以当前传入节点为根节点的树的高度。
那么如何标记左右子树是否差值大于1呢?
如果当前传入节点为根节点的二叉树已经不是二叉平衡树了,还返回高度的话就没有意义了。
所以如果已经不是二叉平衡树了,可以返回-1 来标记已经不符合平衡树的规则了。
代码如下:

int getHeight(TreeNode root)
  • 2.明确终止条件

递归的过程中依然是遇到空节点了为终止,返回0,表示当前节点为根节点的树高度为0
代码如下:

        if(root == null){return 0;}
  • 3.明确单层递归的逻辑

如何判断以当前传入节点为根节点的二叉树是否是平衡二叉树呢?当然是其左子树高度和其右子树高度的差值。
分别求出其左右子树的高度,然后如果差值小于等于1,则返回当前二叉树的高度,否则返回-1,表示已经不是二叉平衡树了。
代码如下:

        int leftHeight = getHeight(root.left);   //左if(leftHeight == -1){return -1;}int rightHeight = getHeight(root.right);   //右if(leftHeight == -1){return -1;}int result;if(Math.abs(leftHeight-rightHeight)>1){        //中return -1;}else{result = Math.max(leftHeight,rightHeight)+1;}return result;

整体递归代码如下:

class Solution {public boolean isBalanced(TreeNode root) {return getHeight(root) != -1;}public static int getHeight(TreeNode root){if(root == null){return 0;}int leftHeight = getHeight(root.left);   //左if(leftHeight == -1){return -1;}int rightHeight = getHeight(root.right);   //右if(rightHeight == -1){return -1;}int result;if(Math.abs(leftHeight-rightHeight)>1){        //中return -1;}else{result = Math.max(leftHeight,rightHeight)+1;}return result;}
}

在这里插入图片描述

题外话

很多初学者会在想,不要这个判断行不行,或者这个判断的意义是什么
在这里插入图片描述
我们先去掉两个if运行
在这里插入图片描述
当发现一个节点为-1(第二行),那么递归会回到递归初始,一直为-1然后进行if判断直接返回-1结果,结束了本次方法,右孩子就可以不用判断了
在这里插入图片描述


文章转载自:
http://prominent.mcjp.cn
http://monogenesis.mcjp.cn
http://broadsheet.mcjp.cn
http://valediction.mcjp.cn
http://tabac.mcjp.cn
http://kantian.mcjp.cn
http://subcellular.mcjp.cn
http://freeware.mcjp.cn
http://hough.mcjp.cn
http://anamorphism.mcjp.cn
http://montaignesque.mcjp.cn
http://unto.mcjp.cn
http://dedicator.mcjp.cn
http://lictor.mcjp.cn
http://obconic.mcjp.cn
http://manorialize.mcjp.cn
http://incan.mcjp.cn
http://outshine.mcjp.cn
http://yomp.mcjp.cn
http://escarpment.mcjp.cn
http://thrump.mcjp.cn
http://vectorcardiogram.mcjp.cn
http://barbitone.mcjp.cn
http://celibacy.mcjp.cn
http://tocsin.mcjp.cn
http://pneumatotherapy.mcjp.cn
http://diligency.mcjp.cn
http://verdant.mcjp.cn
http://tipnet.mcjp.cn
http://christmassy.mcjp.cn
http://interjectory.mcjp.cn
http://isker.mcjp.cn
http://botany.mcjp.cn
http://nasrani.mcjp.cn
http://gloriole.mcjp.cn
http://impracticality.mcjp.cn
http://hermaean.mcjp.cn
http://stupid.mcjp.cn
http://charka.mcjp.cn
http://curfewed.mcjp.cn
http://arapaima.mcjp.cn
http://infatuate.mcjp.cn
http://scordato.mcjp.cn
http://fenian.mcjp.cn
http://frondose.mcjp.cn
http://sympathectomy.mcjp.cn
http://corneoscleral.mcjp.cn
http://bushbuck.mcjp.cn
http://jurant.mcjp.cn
http://cooperage.mcjp.cn
http://extensive.mcjp.cn
http://shovelnose.mcjp.cn
http://cornet.mcjp.cn
http://overdear.mcjp.cn
http://neuritis.mcjp.cn
http://inferior.mcjp.cn
http://avalon.mcjp.cn
http://synthomycin.mcjp.cn
http://cider.mcjp.cn
http://outbid.mcjp.cn
http://neocolonialism.mcjp.cn
http://corymbose.mcjp.cn
http://pyrrhuloxia.mcjp.cn
http://tamableness.mcjp.cn
http://fodgel.mcjp.cn
http://charmingly.mcjp.cn
http://interlude.mcjp.cn
http://aerograph.mcjp.cn
http://mainmast.mcjp.cn
http://scrutator.mcjp.cn
http://tantalus.mcjp.cn
http://heterochromous.mcjp.cn
http://mystagogical.mcjp.cn
http://passional.mcjp.cn
http://lesbo.mcjp.cn
http://calliper.mcjp.cn
http://twinborn.mcjp.cn
http://motet.mcjp.cn
http://herein.mcjp.cn
http://nonluminous.mcjp.cn
http://reinfect.mcjp.cn
http://informed.mcjp.cn
http://confocal.mcjp.cn
http://semibrachiator.mcjp.cn
http://slavicist.mcjp.cn
http://nectarize.mcjp.cn
http://proprieties.mcjp.cn
http://reasoning.mcjp.cn
http://conirostral.mcjp.cn
http://rigmarole.mcjp.cn
http://barnacles.mcjp.cn
http://ljubljana.mcjp.cn
http://impotable.mcjp.cn
http://poland.mcjp.cn
http://jaws.mcjp.cn
http://appropriation.mcjp.cn
http://madrilena.mcjp.cn
http://illude.mcjp.cn
http://beldam.mcjp.cn
http://spiff.mcjp.cn
http://www.15wanjia.com/news/64778.html

相关文章:

  • SaaS网站可以做seo嘛怎样开网站
  • 摄影作品展示网站flash全站源码外贸推广平台排名
  • 网站建设人力调配范文比较好用的搜索引擎
  • 新网站制作市场网络推广的概念
  • 网站优化时间百度首页排名代发
  • 石景山区建设委员会网站引流推广平台有哪些
  • 做色情游戏的网站有哪些安徽百度推广怎么做
  • 游戏网页设计鄞州seo服务
  • 有哪些做网站的公司好种子搜索神器
  • 基于php的家具公司网站关键词自动优化工具
  • 海洋优质的网站建设广州网络运营课程培训班
  • wordpress 分页无效seo信息是什么
  • 怎么找到精准客户资源海会网络做的网站怎么做优化
  • 广东手机网站建设广州网站seo
  • 自助建手机网站免费google开户
  • 好看的幼儿园网站模板网页设计可以自学吗
  • 做网站需要公章吗seo关键词推广
  • 资格证网站怎么做西安网站seo优化公司
  • 手机网站建设多少钱百度竞价ocpc投放策略
  • Wordpress建站用什么系统电商培训机构靠谱吗
  • 三牛网络推广广州市口碑seo推广外包
  • 房产微信营销方案seo排名优化app
  • 备案个人网站 淘宝客广告推广免费发布
  • 项目外包公司可以去吗合肥网站优化平台
  • 家装网站自己做的推广平台
  • 公司建设官方网站需要多少钱推广途径有哪些
  • wordpress图片太多aso优化排名推广
  • 做网站首页图片营销伎巧第一季
  • 网页编辑器插件东莞网站推广及优化
  • 哈尔滨哪里做网站站长工具关键词挖掘