题目
给定一个二叉树,找出其最大深度。
二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。
说明: 叶子节点是指没有子节点的节点。
示例:
给定二叉树 [3,9,20,null,null,15,7],
3
/
9 20
/
15 7
返回它的最大深度 3 。
题解
var maxDepth = function(root) {
let layer = 0
var dfs = (root) => {
if(root===null){
return 0
}
const left = dfs(root.left)
const right = dfs(root.right)
innerLayer = 1 + Math.max(left,right)
layer = Math.max(layer,innerLayer)
return innerLayer
}
dfs(root)
return layer
};
笔记:
- 利用dfs深入
- 简洁版 直接利用自身的函数就好了
var maxDepth = function(root) {
if(!root) {
return 0;
} else {
const left = maxDepth(root.left);
const right = maxDepth(root.right);
return Math.max(left, right) + 1;
}
};

这篇博客介绍了如何使用深度优先搜索(DFS)算法来求解二叉树的最大深度。通过递归实现,从根节点开始,分别计算左子树和右子树的最大深度,取较大值加1即为当前节点的最大深度。示例中展示了对于给定的二叉树,最大深度为3。
594

被折叠的 条评论
为什么被折叠?



