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

网站建设公司微信公众号模板如何去掉wordpress底部版权

网站建设公司微信公众号模板,如何去掉wordpress底部版权,一流的学校网站建设,做外贸免费发布产品的网站文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题:二叉树的直径 出处:543. 二叉树的直径 难度 3 级 题目描述 要求 给定二叉树的根结点 root \texttt{root} root,返回其直径…

文章目录

  • 题目
    • 标题和出处
    • 难度
    • 题目描述
      • 要求
      • 示例
      • 数据范围
  • 解法
    • 思路和算法
    • 代码
    • 复杂度分析

题目

标题和出处

标题:二叉树的直径

出处:543. 二叉树的直径

难度

3 级

题目描述

要求

给定二叉树的根结点 root \texttt{root} root,返回其直径长度。

二叉树的直径是任意两个结点之间的最长路径长度。这条路径可能穿过也可能不穿过根结点。

两个结点之间的路径长度由它们之间边的数目表示。

示例

示例 1:

示例 1

输入: root = [1,2,3,4,5] \texttt{root = [1,2,3,4,5]} root = [1,2,3,4,5]
输出: 3 \texttt{3} 3
解释: 3 \texttt{3} 3 是路径 [4,2,1,3] \texttt{[4,2,1,3]} [4,2,1,3] [5,2,1,3] \texttt{[5,2,1,3]} [5,2,1,3] 的长度。

示例 2:

输入: root = [1,2] \texttt{root = [1,2]} root = [1,2]
输出: 1 \texttt{1} 1

数据范围

  • 树中结点数目在范围 [1, 10 4 ] \texttt{[1, 10}^\texttt{4}\texttt{]} [1, 104]
  • -100 ≤ Node.val ≤ 100 \texttt{-100} \le \texttt{Node.val} \le \texttt{100} -100Node.val100

解法

思路和算法

二叉树中的任意一条路径一定经过某个子树的根结点,子树可以是二叉树本身。

对于任意一个子树而言,经过该子树根结点的最长路径(以下称为「最长路径」,均指包含根结点的最长路径)一定满足以下条件:如果左子树不为空,则最长路径的左端是左子树的最深叶结点,否则最长路径的左端是根结点;如果右子树不为空,则最长路径的右端是右子树的最深叶结点,否则最长路径的右端是根结点。因此,子树的最长路径长度为该子树的左子树和右子树的深度之和,子树的深度为该子树的左子树和右子树的深度的较大值加 1 1 1。此处的深度定义为二叉树中结点的层数,如果二叉树为空则深度为 0 0 0,如果二叉树只有一个结点则深度为 1 1 1

由于二叉树的最长路径长度和二叉树的深度都取决于左子树和右子树的深度,因此可以使用深度优先搜索计算二叉树的深度,计算过程中得到二叉树的直径。

计算二叉树的深度的过程是一个递归的过程,递归的终止条件是当前结点为空,此时深度为 0 0 0。其余情况下,首先得到当前结点的左子树和右子树的深度,然后计算以当前结点为根结点的二叉树的深度和最长路径长度,并维护二叉树的直径。遍历结束之后,即可得到二叉树的直径。

代码

class Solution {int diameter = 0;public int diameterOfBinaryTree(TreeNode root) {getDepth(root);return diameter;}public int getDepth(TreeNode node) {if (node == null) {return 0;}int leftDepth = getDepth(node.left);int rightDepth = getDepth(node.right);diameter = Math.max(diameter, leftDepth + rightDepth);return Math.max(leftDepth, rightDepth) + 1;}
}

复杂度分析

  • 时间复杂度: O ( n ) O(n) O(n),其中 n n n 是二叉树的结点数。每个结点都被访问一次。

  • 空间复杂度: O ( n ) O(n) O(n),其中 n n n 是二叉树的结点数。空间复杂度主要是递归调用的栈空间,取决于二叉树的高度,最坏情况下是 O ( n ) O(n) O(n)

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

相关文章:

  • 电商网站推广方案担路网如何快速做网站
  • 东营远见网站建设公司wordpress做网站过程
  • 网站建设合肥公司怎么做网站淘宝转换工具
  • 西安响应式网站建设公司wordpress 首页字数
  • 个人备案网站百度收录工信部icp备案查询系统
  • 中天建设集团有限公司招聘seo推广是做什么
  • 天津互联网十大公司汕头网站优化哪家好
  • 广州建设银行投诉网站免费观看行情软件网站进入
  • 长春高档网站建设汽车电商网站建设
  • 做图片可以卖给那些网站中恒建设集团有限公司 网站
  • 认证网站所有权要添加代码重庆建设工程招标
  • 重庆舞台搭建招聘网站内容很少如何做seo
  • 自己创建网站怎么做电商硬笔书法网站是谁做的
  • 注册公司如何做网站盐城网页设计方案
  • 外宣做网站宣传聊城做网站的公司渠道
  • 关于网站建设的小故事盱眙有做公司网站的吗
  • 怎么做招投标网站美食网站开发的原则
  • 网站建设技巧wordpress后台菜单修改
  • 贵州高端网站开发一般一个网站从建设到运营要多久
  • 上海中小企业网站建设国内10大设计公司
  • 能源网站模板高清视频服务器
  • aspcms网站表白网站建设
  • wordpress企业网站模版经营性质网站备案
  • 建设一个商城网站需要多少钱网站信息维护方案
  • 哈尔滨网站建设科技公司wordpress店铺模板制作教程
  • 合肥外贸网站建设2024新冠又来了
  • 互联网广告代理seo能干一辈子吗
  • 游戏网站建设表格高培淇自己做的网站
  • 网站建设分为展示型网深圳网站优化
  • 优质网站建设哪家好wordpress 前端 修改