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

电子商务网站建设系统江苏网站制作企业

电子商务网站建设系统,江苏网站制作企业,宿迁做网站公司哪家好,网站程序问题题目 输入一棵节点数为 n 二叉树,判断该二叉树是否是平衡二叉树。 在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树 平衡二叉树(Balanced Binary Tree),具有以下性质:它是一棵空…

题目

输入一棵节点数为 n 二叉树,判断该二叉树是否是平衡二叉树。

在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树

平衡二叉树(Balanced Binary Tree),具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。

样例解释:

样例二叉树如图,为一颗平衡二叉树

注:我们约定空树是平衡二叉树。

数据范围:n≤100,树上节点的val值满足 0≤n≤1000

要求:空间复杂度O(1),时间复杂度O(n)

输入描述:输入一棵二叉树的根节点

返回值描述:输出一个布尔类型的值

示例1

输入:{1,2,3,4,5,6,7}

返回值:true

示例2

输入:{}

返回值:true


思路

在递归求每个节点高度时,多个节点可能会重复递归计算,可以使用Map存储每个节点以及其高度,当一个节点在Map中存在,直接从Map中取高度即可。


代码

import java.util.*;public class Solution {Map<TreeNode, Integer> map = new HashMap<>();public boolean IsBalanced_Solution(TreeNode root) {if(root == null) {return true;}int leftHeight = 0;int rightHeight = 0;if(map.containsKey(root.left)) {leftHeight = map.get(root.left);} else {leftHeight = height(root.left);map.put(root.left, leftHeight);}if(map.containsKey(root.right)) {rightHeight = map.get(root.right);} else {rightHeight = height(root.right);map.put(root.right, rightHeight);}int heightAbs = Math.abs(leftHeight - rightHeight);if(heightAbs > 1) {return false;}return IsBalanced_Solution(root.left) && IsBalanced_Solution(root.right);}public int height(TreeNode root) {if(root == null) {return 0;}return 1 + Math.max(height(root.left), height(root.right));}
}

http://www.yayakq.cn/news/302655/

相关文章:

  • 北京专业网站建设公司互联网服务行业
  • wordpress企业网站建设专业网站设计流程图
  • 深圳 网站建设公企业网络信息安全
  • 华亮建设集团股份有限公司网站运营服务公司经营范围
  • 网站维护html模板网站开发的教学视频教程
  • 前端网站开发毕设类型微信订阅号不认证可以做网站吗
  • 苏州网站网页设计最新WordPress主题破解完美去
  • 上海营销型网站建设价格东莞纸箱定制 技术支持 东莞网站建设
  • 吉安网站建设jxthw商务网站建设与维护论文
  • 网站建设方案书可自行撰写如何网站建设全包
  • 平度建设局网站随州建设局网站
  • 网站建设兼职劳务协议书杭州企业宣传画册制作公司
  • 交流网站建设项目背景c 教学网站开发
  • 网站开发网站开发设计做ppt常用网站
  • 做视频网站的流程甘肃第九建设集团公司网站
  • 广州建设公司网站热点新闻事件及观点简单版
  • 个人业务网站建设企业展厅设计公司企业展厅设计公司
  • 文件备案网站建设方案域名网站怎么做的
  • 网站改版 优势做网站可以申请个体户么
  • 做网站被骗首付款怎么报案做网站主机要选好
  • 有没有帮别人做图片的网站赚钱深圳建设交易公司
  • 电商网站开发商广州设计公司排名前十强
  • 做网站多大python语言基础知识
  • 深圳公司网站开发wordpress 2012主题
  • wordpress自建电商网站刘家窑做网站
  • 网站和域名区别个人网站意义
  • 用织梦的网站怎么做推广余江网站建设
  • 北网站建设淘宝视频怎么下载
  • 做视频网站需要哪些手续华为软件开发工程师
  • asp 企业网站管理系统如何经营一个购物网站