[LeetCode]剑指 Offer 55 - I. 二叉树的深度
Posted Spring-_-Bear
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[LeetCode]剑指 Offer 55 - I. 二叉树的深度相关的知识,希望对你有一定的参考价值。
输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。
例如:
给定二叉树 [3,9,20,null,null,15,7],
3
/ \\
9 20
/ \\
15 7
返回它的最大深度 3 。
提示:
节点总数 <= 10000
题解一:
/**
* 剑指 Offer 55 - I. 二叉树的深度
* 树的深度优先遍历
*/
public int maxDepth(TreeNode root)
return root == null ? 0 : Math.max(maxDepth(root.left), maxDepth(root.right)) + 1;
题解二:
/**
* 剑指 Offer 55 - I. 二叉树的深度
* 树的广度优先遍历(层次遍历)
*/
public int maxDepth(TreeNode root)
if (root == null)
return depth;
Queue<TreeNode> queue = new LinkedList<>();
queue.add(root);
int depth = 0;
// 当队列不为空时遍历
while (!queue.isEmpty())
// 遍历当前层的所有元素
for (int i = queue.size(); i > 0; i--)
TreeNode node = queue.poll();
// 将当前节点的左右孩子加到队尾
if (node.left != null)
queue.add(node.left);
if (node.right != null)
queue.add(node.right);
depth++;
return depth;
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/er-cha-shu-de-shen-du-lcof
以上是关于[LeetCode]剑指 Offer 55 - I. 二叉树的深度的主要内容,如果未能解决你的问题,请参考以下文章
算法leetcode|剑指 Offer 55 - I. 二叉树的深度|104. 二叉树的最大深度(rust和go)
算法leetcode|剑指 Offer 55 - I. 二叉树的深度|104. 二叉树的最大深度(rust和go)
leetcode-剑指 Offer 55 - II平衡二叉树
LeetCode664. 奇怪的打印机 / 剑指 Offer 55 - I. 二叉树的深度 / 剑指 Offer 55 - II. 平衡二叉树