LeetCode 104. 二叉树的最大深度

文章目录

    • 1. 题目信息
    • 2. 解题
      • 2.1 递归法
      • 2.2 按层遍历

1. 题目信息

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

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

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

示例:
给定二叉树 [3,9,20,null,null,15,7],3/ \9  20/  \15   7
返回它的最大深度 3 。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/maximum-depth-of-binary-tree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

《剑指Offer》同题:面试题55 - I. 二叉树的深度

可以参考的博客二叉树。

2.1 递归法

在这里插入图片描述

class Solution {
public:int maxDepth(TreeNode* root) {int maxcount = 0;if(root){calcTreeDepth(root, 0, maxcount);}return maxcount;}void calcTreeDepth(TreeNode* root, int height, int &maxcount){if(root){height++;if(height > maxcount)maxcount = height;if(root->left)calcTreeDepth(root->left, height, maxcount);if(root->right)calcTreeDepth(root->right, height, maxcount);}}
};

在这里插入图片描述

class Solution {
public:int maxDepth(TreeNode* root) {if(!root)return 0;return 1+max(maxDepth(root->left), maxDepth(root->right));}
};

2.2 按层遍历

在这里插入图片描述

class Solution {
public:int maxDepth(TreeNode* root) {if(root == NULL)return 0;queue<TreeNode*> q;q.push(root);int maxcount = 0, i, n;while(!q.empty()){++maxcount;n = q.size();for(i = 0; i < n; ++i){if(q.front()->left)q.push(q.front()->left);if(q.front()->right)q.push(q.front()->right);q.pop();}}return maxcount;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/479878.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

谷歌重磅:可以优化自己的优化器!手动调参或将成为历史!?

文 | 小轶编 | 夕小瑶背景Google Brain团队发布的一篇最新论文在外网引发热议&#xff0c;或将成为Deep Learning发展历程上里程碑式的工作。它所讨论的&#xff0c;是所有AI行业者都要面对的——Deep Learning中的优化问题。也就是&#xff0c;如何更好地训练一个模型。深度模…

最全目标检测相关资料整理 (目标检测+数据增强+卷价神经网络+类别不均衡...)

1 小目标检测&#xff1a;综述&#xff1a;综述论文Augmentation for small object detection深度学习笔记&#xff08;十&#xff09;Augmentation for small object detection&#xff08;翻译&#xff09; 吴建明wujianning&#xff1a;小目标检测的增强算法 机器之心&#…

论文浅尝 | 基于未知谓词与实体类型知识图谱的 Zero-Shot 问题生成

论文笔记整理&#xff1a;谭亦鸣&#xff0c;东南大学博士生&#xff0c;研究方向为跨语言知识图谱问答。来源&#xff1a;NAACL 2018链接&#xff1a;https://www.aclweb.org/anthology/N18-1020问题背景与动机问题生成的目标是将知识图谱三元组作为输入&#xff0c;生成自然语…

阿里P8架构师谈:Restful、SOAP、RPC、SOA、微服务之间的区别

内容大纲&#xff1a; 1.介绍Restful、SOAP、RPC、SOA以及微服务 2.重点谈谈SOA与微服务的区别 3.以及为什么要使用微服务架构 什么是Restful Restful是一种架构设计风格&#xff0c;提供了设计原则和约束条件&#xff0c;而不是架构&#xff0c;而满足这些约束条件和原则的…

微服务系列:Dubbo与SpringCloud的Ribbon、Hystrix、Feign的优劣势比较

在微服务架构中&#xff0c;分布式通信、分布式事务、分布式锁等问题是亟待解决的几个重要问题。 Spring Cloud是一套完整的微服务解决方案&#xff0c;基于 Spring Boot 框架。确切的说&#xff0c;Spring Cloud是一个大容器&#xff08;而不是一个框架&#xff09;&#xff…

经典教材《统计学习导论》现在有了Python版

文 | 张倩源 | 机器之心《统计学习导论》很经典&#xff0c;但用的是 R 语言&#xff0c;没关系&#xff0c;这里有份 Python 版习题实现。斯坦福经典教材《The Element of Statistical Learning》&#xff08;简称 ESL&#xff09;被称为频率学派的统计学习「圣经」&#xff0…

漆桂林 | 人工智能的浪潮中,知识图谱何去何从?

本文转载自公众号&#xff1a;AI科技大本营。近年来&#xff0c;随着人们对 AI 认知能力的积极探索&#xff0c;知识图谱因其表达能力强、拓展性好&#xff0c;基于知识进行推理等优势得到了学界与业界的高度关注。知识图谱&#xff0c;旨在描述客观世界概念、实体、事件及其之…

LeetCode 102. 二叉树的层次遍历(BFS)

文章目录1. 题目信息2. 解题1. 题目信息 给定一个二叉树&#xff0c;返回其按层次遍历的节点值。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 例如: 给定二叉树: [3,9,20,null,null,15,7],3/ \9 20/ \15 7 返回其层次遍历结果&#xff1a;[[3]…

阿里P8架构师谈:微服务Dubbo和SpringCloud架构设计、优劣势比较

本文主要围绕微服务的技术选型、通讯协议、服务依赖模式、开始模式、运行模式等几方面来综合比较Dubbo和Spring Cloud 这2种开发框架。架构师可以根据公司的技术实力并结合项目的特点来选择某个合适的微服务架构平台&#xff0c;以此稳妥地实施项目的微服务化改造或开发进程。 …

数码摄影(扫街)

快门速度&#xff1a; 快门速度是曝光控制的一个重要变量&#xff0c;能够控制光线进入的多少。 快门的速度越快&#xff0c;时间越短&#xff0c;通过的光线就越少&#xff0c;反之&#xff0c;则越多。 在很好光线下&#xff0c;1/125s就能清晰地捕捉到行走中的人物。 阴天…

论文浅尝 | 让“演进知识图谱”带你“瞻前顾后”看世界

本文转载自公众号&#xff1a;爱思美谱。 指导老师 | 傅洛伊 王新兵核心技术成员 | 刘佳琪导读在前面几期的内容中&#xff0c;小编已经为大家介绍了知识图谱的产生历史和基本概念。相信大家已经对知识图谱强大的信息结构化能力有所了解。但是&#xff0c;目前的大部分知识…

做过leader,会数仓,项目经验丰富,能值多少钱?

有个朋友&#xff0c;上个月准备从 Java 转做大数据&#xff0c;一个月过去了&#xff0c;一份面试都没约到&#xff0c;来问我怎么回事。我一看简历&#xff0c;期望年薪 40w&#xff0c;深度也不够&#xff0c;要大项目也没有。我们做大数据的&#xff0c;虽说是薪资高&#…

LeetCode 98. 验证二叉搜索树(中序遍历)

文章目录1. 题目信息2. 解题2.1 递归中序2.2 非递归中序1. 题目信息 给定一个二叉树&#xff0c;判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征&#xff1a; 节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和…

阿里P8架构师谈:Zookeeper的原理和架构设计,以及应用场景

什么是 Zookeeper Zookeeper 分布式服务框架是Apache Hadoop 的一个子项目&#xff0c;它主要是用来解决分布式应用中经常遇到的一些数据管理问题&#xff0c;如&#xff1a; 统一命名服务 状态同步服务 集群管理 分布式应用配置项的管理等 Zookeeper已经成为Hadoop生态系统…

GNN学习一

一、为什么使用图卷积 传动的深度学习方法&#xff0c;比如卷积网络&#xff0c;效果很好&#xff0c;但是它研究的对象是Euclidean data&#xff0c;这种数据的特征就是有规则的空间结构&#xff0c;比如图片是规则的正方形格子&#xff0c;比如语音是规则的一维序列。这些数…

禁术级竞赛刷分技巧:找到跟测试集最接近的有标签样本

文 | 苏剑林单位 &#xff5c; 追一科技编 | 兔子酱不管是打比赛、做实验还是搞工程&#xff0c;我们经常会遇到训练集与测试集分布不一致的情况。一般来说我们会从训练集中划分出来一个验证集&#xff0c;通过这个验证集来调整一些超参数[1]&#xff0c;比如控制模型的训练轮数…

论文浅尝 | 最新10篇《知识图谱》论文推荐(ICML, CVPR, ACL, KDD, IJCAI 2019)

本文转载自公众号&#xff1a;专知。【导读】知识图谱一直是研究热点&#xff0c;研究者近年来广泛关注知识图谱嵌入&#xff08;Knowledge Graph Embedding&#xff0c;简称KGE&#xff09;方法&#xff0c;在保留语义的同时&#xff0c;将知识图谱中的实体和关系映射到连续的…

详解RPC远程调用和消息队列MQ的区别

谈到分布式架构&#xff0c;就不得不谈到分布式架构的基石RPC。 什么是RPC RPC&#xff08;Remote Procedure Call&#xff09;远程过程调用&#xff0c;主要解决远程通信间的问题&#xff0c;不需要了解底层网络的通信机制。 RPC服务框架有哪些 知名度较高的有Thrift&#x…

GNN学习二

基于频谱的图卷积和基于空间的图卷积 &#xff08;在图上做傅里叶变换&#xff1f;&#xff09; 图时间空间网络-交通上车流速度和红绿灯

技术动态 | eBay开源分布式知识图谱存储Beam,支持类SPARQL查询

本文转载自公众号&#xff1a;AI前线。作者 | Diego Ongaro&#xff0c;Simon Fell 译者 | 盖磊 编辑 | Natalie AI 前线导读&#xff1a;eBay 工程人员于 5 月 1 日在 官方技术博客 上发布了开源的分布式知识图谱存储 Beam&#xff0c;Beam 实现了事实数据的 RDF 存储&#xf…