[Tree Breadth First Search] 二叉树的最大深度
leetcode 104、Maximum Depth of Binary Tree、难度easy
0. 题干
给定一个二叉树,找出其最大深度。
二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。
说明: 叶子节点是指没有子节点的节点。
示例:
给定二叉树 [3,9,20,null,null,15,7],
返回它的最大深度 3 。
1. 代码
// 广度优先:使用队列
class Solution {public:int maxDepth(TreeNode* root) {if(root==NULL) return 0;queue<TreeNode*> q;if (root)q.push(root);int level=0;while(q.size()){level++;int num=q.size();for(int i=0;i<num;i++){TreeNode* cur=q.front();q.pop();if(cur->left) q.push(cur->left);if(cur->right) q.push(cur->right);}}return level; }
};
2. 简述代码流程
先存根节点root到队列里面去,然后level值为1;
找根节点的左右结点存到队列里面,level值为2,
此时发现值为9的结点的左右孩子不存在,那就别管,再此进入for(int i=0;i<num;i++)
循环,把结点值为20的左右孩子存到队列里面,当然之前要pop掉值为20的结点,
此时level的值为3,发现值为15、以及值为7的结点都没有左右孩子,依次pop掉,
队列为空,跳出while(q.size()),代码运行结束,返回 level值为3。
[Tree Breadth First Search] 二叉树的最大深度相关推荐
- 树上的BFS(Tree Breadth First Search)
Pattern: Tree Breadth First Search,树上的BFS 介绍来自链接:https://www.zhihu.com/question/36738189/answer/9086 ...
- 领扣-104/111 二叉树的最大深度 Maximum Depth of Binary Tree MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- 104.求二叉树的最大深度 Maximum Depth of Binary Tree
求二叉树的最大深度 using System; using System.Collections.Generic; using System.Linq; using System.Text; usin ...
- 104. Maximum Depth of Binary Tree 二叉树的最大深度
给定一个二叉树,找出其最大深度. 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,null,null,15,7], ...
- 【每日一算法】二叉树的最大深度
微信改版,加星标不迷路! 每日一算法-二叉树的最大深度 作者:阿广 阅读目录 ? 题目 ? 解析 ? 完整代码 1 题目 给定一个二叉树,找出其最大深度. 二叉树的深度为根节点到最远叶子节点的最长路径 ...
- 二叉树-二叉树的最大深度(递归 )
题意: 给定一个二叉树,找出其最大深度. 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,null,null,15 ...
- LeetCode 102二叉树的层序遍历103二叉树锯齿形遍历104二叉树的最大深度
微信搜一搜:bigsai 大家都在关注的刷题.学习数据结构和算法宝藏项目 关注回复进群即可加入力扣打卡群,欢迎划水.近期打卡: LeetCode 97交错字符串(动态规划) LeetCode 98验证 ...
- 每天一道LeetCode-----计算二叉树的最大深度及最小深度,判断二叉树是否是高度平衡二叉树
Maximum Depth of Binary Tree 原题链接Maximum Depth of Binary Tree 计算给定二叉树的最大深度,最大深度指从根节点到叶子节点的最长路径上的节点个数 ...
- 【树】104. 二叉树的最大深度
题目 104. 二叉树的最大深度 方法1 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode ...
最新文章
- 「天才少年」稚晖君调戏机械臂!加上AI视觉,2小时学会抓螺母
- 比特币前核心开发者Mike Hearn三年前的预测一一应验
- Lubuntu下小巧好用的Python编辑工具Geany
- Guice系列之用户指南(五)
- java方法体逻辑不会写怎么办,想自己写框架?不会写Java注解可不行
- Coloring Dominoes
- 【机器学习】岭回归(L2正则在干嘛!)
- 当你负债累累,看不到方向,众叛亲离时,该如何面对?
- idea抽取重复方法快捷键_idea 常用快捷键
- 高等数学(第七版)同济大学 习题4-5 个人解答
- 用陆地卫星 TM6数据演算 地表温度的单窗算法
- 便携主机推荐——ATX电源篇
- 移动前端开发和 Web 前端开发的区别是什么?
- 运行c程序的步骤及方法
- 1117: 零起点学算法24——求正弦和余弦
- 两个向量叉乘表示什么意思_为什么向量积(叉乘)的这两个概念是这样的?
- 故事系列之二:佛法世界中看天赋与勤奋
- bit1618c 功能简介_c 9中的新功能简介
- Swift:什么时候需要mutating这个参数
- 基于oval注解支持JavaScript表达式约束条件
热门文章
- 工作室机房干扰问题怎样解决?
- jquery 会话存储_5个jQuery打字和会话插件
- JDO学习笔记之Sun JDO参考实现篇
- 单目视觉测距matlab,单目视觉测量系统误差分析.pdf
- Leap Left Grab和 Event hand Grabbed
- 余承东硬刚iPhone11;苹果推送正式版iOS 13;Facebook总部发生员工跳楼自杀事件 | EA周报...
- 用STAR法则设计产品/运营简历
- 汽车车灯产业链全景图
- 物联网发展预期与展望
- 秀场精灵陈梓桐 受邀担任第六季完美童模全球总决赛首席体验官