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

做网站学什么软件宁波网站建设网站排名优化

做网站学什么软件,宁波网站建设网站排名优化,.net空网站做九九乘法表,网络架构是什么意思1、题目描述 给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:3 示例 2: 输入:root [1…

1、题目描述

给定一个二叉树 root ,返回其最大深度。

二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。

示例 1:

输入:root = [3,9,20,null,null,15,7]
输出:3

示例 2:

输入:root = [1,null,2]
输出:2

提示:

  • 树中节点的数量在 [0, 104] 区间内。

  • -100 <= Node.val <= 100

2、方法:递归法(深度优先DFS)

解题思路

递归法通过分解问题为子问题求解,分别计算左右子树的最大深度,再取较大值加 1(当前节点)。

步骤:

  1. 终止条件:当前节点为 null 时,深度为 0。

  2. 递归计算

    • 计算左子树的最大深度 leftDepth

    • 计算右子树的最大深度 rightDepth

  3. 返回结果max(leftDepth, rightDepth) + 1

时间复杂度:O(n),空间复杂度:O(n) (调用栈)

public int maxDepth(TreeNode root) {if (root == null) return 0;  // 终止条件int leftDepth = maxDepth(root.left);   // 递归左子树int rightDepth = maxDepth(root.right); // 递归右子树return Math.max(leftDepth, rightDepth) + 1; // 当前节点深度
}

3、方法2:迭代法(广度优先BFS)

解题思路

迭代法通过队列按层遍历节点,每遍历完一层,深度加 1。

步骤:

  1. 初始化:根节点入队,初始化深度 depth = 0

  2. 按层遍历

    • 记录当前层的节点数 size

    • 弹出 size 个节点,并将它们的子节点入队。

    • 每处理完一层,depth++

  3. 返回结果:队列为空时返回 depth

时间复杂度:O(n),空间复杂度:O(n) (栈空间)

public int maxDepth(TreeNode root) {if (root == null) return 0;Queue<TreeNode> queue = new LinkedList<>();queue.offer(root);int depth = 0;while (!queue.isEmpty()) {int size = queue.size();  // 当前层的节点数while (size-- > 0) {      // 处理当前层所有节点TreeNode currNode = queue.poll();if (currNode.left != null) queue.offer(currNode.left);if (currNode.right != null) queue.offer(currNode.right);}depth++;  // 层数增加}return depth;
}

http://www.dtcms.com/wzjs/514154.html

相关文章:

  • 怎么搜索整个网站内容西安百度百科
  • 企业建设门户网站有哪些seo对网站优化
  • 北京建设银行网站10条重大新闻
  • 网站注册备案之后怎么做百度搜索关键词排名靠前
  • dede网站搬家后为什么都没有内容呢站长工具是做什么的
  • 凡客诚品是干嘛的百度关键词优化培训
  • 程序员培训班课程网站优化外包推荐
  • 深圳产品设计手绘天津优化公司哪家好
  • 汽车宣传网站模板定制网站开发公司
  • 湖南微信网站公司简介重庆seo点击工具
  • c2c网站建设2023新闻摘抄十条
  • 商丘做网站公司新站seo快速收录网页内容页的方法疫情防控最新通告
  • 网站的外链接数无锡网站优化公司
  • 做美食网站赚钱吗seo的理解
  • 给别人做网站挣钱吗哈尔滨seo关键词优化
  • 做网站销售的工作电商网站建设方案
  • ps做分享类网站效果图深圳最好seo
  • 哪个网站可以做微信头图长沙做网站的公司有哪些
  • ps做网站大小廊坊网站建设优化
  • 青岛做网站公司怎么制作自己公司网站
  • 仿网站视频教程站长工具 seo查询
  • 展示网站模板下载自己有网站怎么推广
  • 哪些网站百度不收录seo赚钱培训
  • 第三方网站建设平台在线葡京在线葡京
  • 杭州黑马程序员培训机构怎么样深圳网站设计十年乐云seo
  • 网站建设疑问第三方推广平台
  • 自己做网站传视屏windows优化软件哪个好
  • 手机网站开发 和 网页注册网站域名
  • 网站群建设方案广州seo好找工作吗
  • 西安建网站的公司网站开发月薪多少钱