41(牛客Top100)-104.二叉树的最大深度

2023-05-16

给定一个二叉树,找出其最大深度。
二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。

说明: 叶子节点是指没有子节点的节点。
思路:
方法1:深度优先搜索

public int maxDepth(TreeNode root) {
        if (root == null) return 0;
        else {
            int leftHeight = maxDepth(root.left);
            int rightHeight = maxDepth(root.right);
            return Math.max(leftHeight, rightHeight) + 1;
        }
    }

时间复杂度:O(n)
空间复杂度:O(height)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

41(牛客Top100)-104.二叉树的最大深度 的相关文章

  • 28(牛客Top100)-64. 最小路径和

    给定一个包含非负整数的 m x n 网格 grid xff0c 请找出一条从左上角到右下角的路径 xff0c 使得路径上的数字总和为最小 说明 xff1a 每次只能向下或者向右移动一步 思路 xff1a 动态规划 1 状态定义 初始化二维数
  • 31(牛客Top100)-75.颜色分类

    给定一个包含红色 白色和蓝色 xff0c 一共 n 个元素的数组 xff0c 原地对它们进行排序 xff0c 使得相同颜色的元素相邻 xff0c 并按照红色 白色 蓝色顺序排列 此题中 xff0c 我们使用整数 0 1 和 2 分别表示红色
  • 33(牛客Top100)-78.子集

    给你一个整数数组 nums xff0c 数组中的元素 互不相同 返回该数组所有可能的子集 xff08 幂集 xff09 解集 不能 包含重复的子集 你可以按 任意顺序 返回解集 思路 方法1 xff1a 二进制排序 xff08 字典排序 x
  • 35(牛客Top100)-84.柱状图中最大的矩形

    给定 n 个非负整数 xff0c 用来表示柱状图中各个柱子的高度 每个柱子彼此相邻 xff0c 且宽度为 1 求在该柱状图中 xff0c 能够勾勒出来的矩形的最大面积 思路 xff1a 方法1 xff1a 栈 43 邵兵 span clas
  • 36(牛客Top100)-85.最大矩阵

    给定一个仅包含 0 和 1 大小为 rows x cols 的二维二进制矩阵 xff0c 找出只包含 1 的最大矩形 xff0c 并返回其面积 思路 xff1a 先抄下来 xff0c 我也不懂 方法1 xff1a 单调栈 span clas
  • 37(牛客Top100)-94.二叉树的中序遍历

    给定一个二叉树的根节点 root xff0c 返回它的 中序 遍历 思路 xff1a 方法1 xff1a 递归 按照访问左子树 根节点 右子树的方式遍历这棵树 span class token keyword public span spa
  • 38(牛客Top100)-96.不同的二叉搜索树

    给你一个整数 n xff0c 求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种 xff1f 返回满足题意的二叉搜索树的种数 思路 xff1a 1 动态规划 动态方程 xff1a span class token
  • 39(牛客Top100)-98.验证二叉搜索树

    给你一个二叉树的根节点 root xff0c 判断其是否是一个有效的二叉搜索树 有效 二叉搜索树定义如下 xff1a 节点的左子树只包含 小于 当前节点的数 节点的右子树只包含 大于 当前节点的数 所有左子树和右子树自身必须也是二叉搜索树
  • 41(牛客Top100)-104.二叉树的最大深度

    给定一个二叉树 xff0c 找出其最大深度 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数 说明 叶子节点是指没有子节点的节点 思路 xff1a 方法1 xff1a 深度优先搜索 span class token keyword p
  • 42(牛客Top100)-102.二叉树的层序遍历

    给你一个二叉树 xff0c 请你返回其按 层序遍历 得到的节点值 xff08 即逐层地 xff0c 从左到右访问所有节点 xff09 思路 xff1a 用队列按层次遍历 方法1 xff1a 广度优先搜索 span class token k
  • 45(牛客Top100)-121.买卖股票的最优时间

    给定一个数组 prices xff0c 它的第 i 个元素 prices i 表示一支给定股票第 i 天的价格 你只能选择 某一天 买入这只股票 xff0c 并选择在 未来的某一个不同的日子 卖出该股票 设计一个算法来计算你所能获取的最大利
  • 47(牛客Top100)-128.最长连续子序列

    给定一个未排序的整数数组 nums xff0c 找出数字连续的最长序列 xff08 不要求序列元素在原数组中连续 xff09 的长度 请你设计并实现时间复杂度为 O n 的算法解决此问题 思路 xff1a 方法1 xff1a 利用set集合
  • leetcode104. 二叉树的最大深度

    题目 给定一个二叉树 xff0c 找出其最大深度 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数 说明 叶子节点是指没有子节点的节点 示例 xff1a 给定二叉树 3 9 20 null null 15 7 xff0c 返回它的最大
  • ros2 basics #104 python c++ roslaunch cmake

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 一 创建工作区二 加载模型三 正经地创建一个工作区的方法 xff1a 1 c 43 43 2 编译3 launch python
  • 【leetcode】104. 二叉树的最大深度(maximum-depth-of-binary-tree)(DFS)[简单]

    链接 https leetcode cn com problems maximum depth of binary tree 耗时 解题 xff1a 7 min 题解 xff1a 3 min 题意 给定一个二叉树 xff0c 找出其最大深度
  • 101、104规约解析

    转载 xff1a 电网101 104规约解析 xff08 Java xff09 张二狗和苗翠花的博客 CSDN博客 iec101 java 1 前言 最近在研究广东电网的101与104规约 xff0c 也就是DL T634 5101 200
  • 制作IEC101/104报文解析工具

    文章目录 准备 一 IEC101 104协议 二 制作解析工具步骤 1 建立协议族 2 建立协议 3 建立术语 4 建立报文块 5 建立报文解析规则 总结 准备 这里是基于 在线解析二进制报文 文章中介绍的物联网助手来快速搭建IEC101
  • 101、104规约解析

    转载 xff1a 电网101 104规约解析 xff08 Java xff09 张二狗和苗翠花的博客 CSDN博客 iec101 java 1 前言 最近在研究广东电网的101与104规约 xff0c 也就是DL T634 5101 200
  • 101. Symmetric Tree\104. Maximum Depth of Binary Tree\111. Minimum Depth of Binary Tree

    Symmetric Tree 题目描述 代码实现 Maximum Depth of Binary Tree 题目描述 代码实现 Minimum Depth of Binary Tree 题目描述 代码实现 101 Symmetric Tre
  • 104. Maximum Depth of Binary Tree

    Definition for a binary tree node struct TreeNode int val TreeNode left TreeNode right TreeNode int x val x left NULL ri

随机推荐

  • 27(牛客Top100)-62. 不同路径

    一个机器人位于一个 m x n 网格的左上角 xff08 起始点在下图中标记为 Start xff09 机器人每次只能向下或者向右移动一步 机器人试图达到网格的右下角 xff08 在下图中标记为 Finish xff09 问总共有多少条不同
  • 28(牛客Top100)-64. 最小路径和

    给定一个包含非负整数的 m x n 网格 grid xff0c 请找出一条从左上角到右下角的路径 xff0c 使得路径上的数字总和为最小 说明 xff1a 每次只能向下或者向右移动一步 思路 xff1a 动态规划 1 状态定义 初始化二维数
  • 30(牛客Top100)-72. 编辑距离

    给你两个单词 word1 和 word2 xff0c 请你计算出将 word1 转换成 word2 所使用的最少操作数 你可以对一个单词进行如下三种操作 xff1a 插入一个字符 删除一个字符 替换一个字符 思路 xff1a 动态规划 1
  • 29(牛客Top100)-70.爬楼梯

    假设你正在爬楼梯 需要 n 阶你才能到达楼顶 每次你可以爬 1 或 2 个台阶 你有多少种不同的方法可以爬到楼顶呢 xff1f 注意 xff1a 给定 n 是一个正整数 思路 xff1a 方法1 xff1a 动态规划 span class
  • 31(牛客Top100)-75.颜色分类

    给定一个包含红色 白色和蓝色 xff0c 一共 n 个元素的数组 xff0c 原地对它们进行排序 xff0c 使得相同颜色的元素相邻 xff0c 并按照红色 白色 蓝色顺序排列 此题中 xff0c 我们使用整数 0 1 和 2 分别表示红色
  • spring boot面试总结

    spring boot xff08 1 xff09 新建springboot项目 xff08 2 xff09 springboot整合mybatis实现增删改查 1 概述 1 1 springboot介绍 Spring Boot 是 Spr
  • [Android] 以singleInstance模式加载的Activity怎么接收以Bundle方式传递过来的参数 By onNewIntent() but not onResum

    问题来自这儿 xff0c Bundle在接收时未更新 xff0c http blog csdn net dadoneo article details 8164058 虽然可以暂时解决问题 xff0c 但并未说到根本原因 xff0c 下面就
  • 33(牛客Top100)-78.子集

    给你一个整数数组 nums xff0c 数组中的元素 互不相同 返回该数组所有可能的子集 xff08 幂集 xff09 解集 不能 包含重复的子集 你可以按 任意顺序 返回解集 思路 方法1 xff1a 二进制排序 xff08 字典排序 x
  • 34(牛客Top100)-79.单词搜索

    给定一个 m x n 二维字符网格 board 和一个字符串单词 word 如果 word 存在于网格中 xff0c 返回 true xff1b 否则 xff0c 返回 false 单词必须按照字母顺序 xff0c 通过相邻的单元格内的字母
  • 35(牛客Top100)-84.柱状图中最大的矩形

    给定 n 个非负整数 xff0c 用来表示柱状图中各个柱子的高度 每个柱子彼此相邻 xff0c 且宽度为 1 求在该柱状图中 xff0c 能够勾勒出来的矩形的最大面积 思路 xff1a 方法1 xff1a 栈 43 邵兵 span clas
  • 36(牛客Top100)-85.最大矩阵

    给定一个仅包含 0 和 1 大小为 rows x cols 的二维二进制矩阵 xff0c 找出只包含 1 的最大矩形 xff0c 并返回其面积 思路 xff1a 先抄下来 xff0c 我也不懂 方法1 xff1a 单调栈 span clas
  • 新建springboot项目

    1 新建项目 xff0c 选择Spring Initializr 2 直接finish xff0c 然后就等待下载各种包 xff0c 大约10分钟左右 3 包变绿后 xff0c pom xml中导入web依赖 span class toke
  • springboot整合mybatis实现增删改查

    1 新建springboot项目 xff0c 连接数据库 2 导入依赖 span class token generics span class token punctuation lt span dependencies span cla
  • 37(牛客Top100)-94.二叉树的中序遍历

    给定一个二叉树的根节点 root xff0c 返回它的 中序 遍历 思路 xff1a 方法1 xff1a 递归 按照访问左子树 根节点 右子树的方式遍历这棵树 span class token keyword public span spa
  • 38(牛客Top100)-96.不同的二叉搜索树

    给你一个整数 n xff0c 求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种 xff1f 返回满足题意的二叉搜索树的种数 思路 xff1a 1 动态规划 动态方程 xff1a span class token
  • 40(牛客Top100)-101.对称二叉树

    给定一个二叉树 xff0c 检查它是否是镜像对称的 思路 xff1a 方法1 xff1a 递归 span class token keyword public span span class token keyword boolean sp
  • 39(牛客Top100)-98.验证二叉搜索树

    给你一个二叉树的根节点 root xff0c 判断其是否是一个有效的二叉搜索树 有效 二叉搜索树定义如下 xff1a 节点的左子树只包含 小于 当前节点的数 节点的右子树只包含 大于 当前节点的数 所有左子树和右子树自身必须也是二叉搜索树
  • Excel合并计算完成多表格数据汇总求和

    Excel合并计算完成多表格数据汇总求和 多表格数据汇总可以使用透视表 xff0c 使用函数 xff0c 今天读书屋OFFICE网陈飞老师分享一个通过合并计算完成多表格数据汇总方法 xff0c 合并计算分为两种情况 xff0c 一种情况是
  • Google Datastore 学习记录

    由于在google app engine 使用google cloud sql 是要收费的 xff0c 于是学习一下google提供的免费的非关系型数据库datastore 它的特点有 xff1a No planned downtime x
  • 41(牛客Top100)-104.二叉树的最大深度

    给定一个二叉树 xff0c 找出其最大深度 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数 说明 叶子节点是指没有子节点的节点 思路 xff1a 方法1 xff1a 深度优先搜索 span class token keyword p