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

智慧旅游网站建设方案培训计划方案

智慧旅游网站建设方案,培训计划方案,企业网盘怎么上传文件,南头专业外贸网站建设公司剑指 Offer 55 - II. 平衡二叉树 难度:easy\color{Green}{easy}easy 题目描述 输入一棵二叉树的根节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。 示例 1: 给定二叉树 […

剑指 Offer 55 - II. 平衡二叉树

难度:easy\color{Green}{easy}easy


题目描述

输入一棵二叉树的根节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。

示例 1:

给定二叉树 [3,9,20,null,null,15,7][3,9,20,null,null,15,7][3,9,20,null,null,15,7]

    3/ \9  20/  \15   7

返回 truetruetrue

示例 2:

给定二叉树 [1,2,2,3,3,null,null,4,4][1,2,2,3,3,null,null,4,4][1,2,2,3,3,null,null,4,4]

       1/ \2   2/ \3   3/ \4   4

返回 falsefalsefalse

限制:

  • 0<=树的结点个数<=100000 <= 树的结点个数 <= 100000<=树的结点个数<=10000

注意:本题与主站 110 题相同:https://leetcode-cn.com/problems/balanced-binary-tree/


算法

(递归)

递归判断:

先递归判断两棵子树是否是平衡的,递归的过程中记录每棵树的最大深度值,然后判断两棵子树的最大深度的差是否不大于1。

复杂度分析

  • 时间复杂度:每个节点仅被遍历一次,且判断的复杂度是 O(1)O(1)O(1)。所以总时间复杂度是O(n)O(n)O(n)

  • 空间复杂度 : O(n)O(n)O(n)

C++ 代码

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/
class Solution {
public:bool ans;bool isBalanced(TreeNode* root) {ans = true;dfs(root);return ans;}int dfs(TreeNode* root) {if (!root) return 0;int lh = dfs(root->left), rh = dfs(root->right);if (abs(lh - rh) > 1) ans = false;return max(lh, rh) + 1;}
};

算法2

构造一个获取当前子树的深度的函数 maxdepth(root) ,通过比较某子树的左右子树的深度差 abs(maxdepth(root.left) - maxdepth(root.right)) <= 1 是否成立,来判断某子树是否是二叉平衡树。若所有子树都平衡,则此树平衡。

C++ 代码

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/
class Solution {
public:int maxDepth(TreeNode* root) {if (!root) return 0;return max(maxDepth(root->left), maxDepth(root->right)) + 1;}bool isBalanced(TreeNode* root) {if (!root) return true;int left = maxDepth(root->left);int right = maxDepth(root->right);return abs(left - right) <= 1 && isBalanced(root->left) && isBalanced(root->right);}
};
http://www.dinnco.com/news/51089.html

相关文章:

  • 湖北做网站系统哪家好百度精准引流推广
  • 有女人和马做网站吗企业推广宣传方式
  • 北京网站设计制作网站网站关键词怎么设置
  • 男女性做那个微视频网站广告联盟赚钱app
  • web和网站的区别今天的新闻主要内容
  • wordpress php解密算法信息流优化师面试常见问题
  • 网站建设平台郑州热门网络推广免费咨询
  • 建筑装饰和网站建设哪个好网站怎样优化关键词好
  • 精品网站建设电话高端网站建设哪家便宜
  • 外贸网站contact网站推广策略
  • 百度做网站引流公司做网页要多少钱
  • 网站建设前端技术win7最好的优化软件
  • 重庆网站建设选承越哈尔滨网络公司
  • 甘肃手机版建站系统哪个好杭州seo靠谱
  • 给六人游做网站开发的推广团队在哪里找
  • 深圳网站建设哪家口碑好广州排名推广
  • 哈尔滨城市建设局网站外贸网站推广seo
  • 做个网站哪里可以做seo关键词有话要多少钱
  • 一个网站收录很高 但外链很少是什么原因seo工作流程
  • 上海网站seo招聘天津seo推广优化
  • 深圳网站建设忧化女教师遭网课入侵直播录屏曝
  • 事业单位门户网站建设包含内容小说排行榜百度搜索风云榜
  • 阿里云ecs 做网站济南优化网络营销
  • 电商型网站设计企业seo优化效果怎么样
  • 芜湖做网站百度手机点击排名工具
  • 网站制作要花多少钱产品营销网站建设
  • 在哪找做网站的优化seo报价
  • 婚庆公司网站设计关联词有哪些五年级
  • ppt做视频模板下载网站电商平台推广费用大概要多少
  • 企业门户平台设计方案苏州首页排名关键词优化