首页 > 其他分享 >104.二叉树的最大深度

104.二叉树的最大深度

时间:2023-04-04 17:47:40浏览次数:52  
标签:node return int que 二叉树 深度 root 104

给定一个二叉树,找出其最大深度。

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

说明: 叶子节点是指没有子节点的节点。

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

class Solution {
public:
int getdepth(TreeNode* node) {
        if (node == NULL) return 0;
        int leftdepth = getdepth(node->left);       // 左
        int rightdepth = getdepth(node->right);     // 右
        int depth = 1 + max(leftdepth, rightdepth); // 中
        return depth;
    }
    int maxdepth1(TreeNode* root) {
        return getdepth(root);
    }
    int maxDepth2(TreeNode* root) {
        if(root == nullptr) return 0;
        que.push(root);
        int res = 1;
        while(!que.empty())
        {
            int size = que.size();
            for(int i = 0; i < size; i++)
            {
                TreeNode *node = que.front();
                que.pop();
                if(node->left) que.push(node->left);
                if(node->right) que.push(node->right);
            }
            res++;
        }
        return res - 1;
    }
private:
    queue<TreeNode*> que;
};

标签:node,return,int,que,二叉树,深度,root,104
From: https://www.cnblogs.com/lihaoxiang/p/17287191.html

相关文章

  • 基于mnist手写数字数据库的深度学习网络训练和数字识别matlab仿真
    1.算法描述        MNIST数据集(MixedNationalInstituteofStandardsandTechnologydatabase)是美国国家标准与技术研究院收集整理的大型手写数字数据库,该数据集包含60000 个于训练的样本和10000 个于测试的样本,图像是固定⼤小(28x28像素),每个像素的值为......
  • 代码随想录Day20-Leetcode654.最大二叉树,617.合并二叉树,700.二叉搜索树中的搜索,98.验
    654.最大二叉树题目链接:https://leetcode.cn/problems/maximum-binary-tree/基本的模拟思路很快/***Definitionforabinarytreenode.*functionTreeNode(val,left,right){*this.val=(val===undefined?0:val)*this.left=(left===undefined......
  • 树:剑指 Offer 37. 序列化二叉树
    题目描述:请实现两个函数,分别用来序列化和反序列化二叉树。你需要设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列/反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。提示:输入输出格式与LeetCo......
  • 最小覆盖子串(哈希表、字符串)、两数之和(数组、哈希表)、二叉树的层序遍历 II(树、广
    最小覆盖子串(哈希表、字符串)给你一个字符串s、一个字符串t。返回s中涵盖t所有字符的最小子串。如果s中不存在涵盖t所有字符的子串,则返回空字符串""。**注意:**如果s中存在这样的子串,我们保证它是唯一的答案。示例1:输入:s="ADOBECODEBANC",t="ABC"输出:"B......
  • 【数据结构】二叉树先序、中序、后序及层次遍历(C语言版)
    一、图示展示1.先序遍历先序遍历可以想象为,一个小人从一棵二叉树根节点为起点,沿着二叉树外沿,逆时针走一圈回到根节点,路上遇到的元素顺序,就是先序遍历的结果先序遍历结果为:ABDHIEJCFKG动画演示:记住小人沿着外围跑一圈(直到跑回根节点),多看几次动图便能理解2.......
  • 二叉树
    树的结构一棵二叉树又三个部分组成:根节点左子树右子树我们将树的结构定义如下:classTreeNode{public: intval; TreeNode*left; TreeNode*right; intheight; TreeNode(intx):val(x),left(nullptr),right(nullptr),height(1){}; TreeNode():TreeNode(0){};};......
  • 原型展示:基于深度学习的人脸识别会议签到系统
    电梯演讲:https://www.bilibili.com/video/BV1kc411W7w4?t=9.9原型:1,主界面  2,会议管理  3,人员管理  4,会议室管理 ......
  • 【动手学深度学习】2.4 ~ 2.7 节学习(微积分、自动求导、概率、查阅文档)
    2.4微积分2.4.3梯度梯度是一个多元函数所有变量偏导数的连接。具体而言:设函数\(f:\mathbb{R}^n\rightarrow\mathbb{R}\)的输入是一个\(n\)维向量\(\boldsymbol{x}=[x_1,x_2,\cdots,x_n]^T\),输出是一个标量。函数\(f(\boldsymbol{x})\)相对于\(\boldsymbol{x}\)......
  • 又是华为!对标 TensorFlow、PyTorch,深度学习框架 MindSpore已开源!附入手公开课
     Datawhale 作者:Datawhale摘要:随着深度学习框架等工具的全面开源,最强AI处理芯片昇腾的落地,华为的AI布局已经逐渐清晰起来,MindSpore将为各行业带来哪些新变化,让我们拭目以待。今年的华为开发者大会HDC2020上,除了昇腾、鲲鹏等自研芯片硬件平台之外,最令人期待的就是深度学习......
  • 复旦大学邱锡鹏教授:一张图带你梳理深度学习知识脉络
     Datawhale 作者:邱锡鹏,复旦大学教授寄语:本文梳理了深度学习知识体系,分为机器学习、神经网络和概率图模型,同时对机器学习算法类型、深度学习原理框架等进行了梳理,帮助大家更好地学习和入手深度学习。深度学习是机器学习的分支,是一种以人工神经网络为架构,对数据进行表征学习的算法......