描述
求给定二叉树的最大深度,
深度是指树的根节点到任一叶子节点路径上节点的数量。
最大深度是所有叶子节点的深度的最大值。
(注:叶子节点是指没有子节点的节点。)
数据范围:0 \le n \le 1000000≤n≤100000,树上每个节点的val满足 |val| \le 100∣val∣≤100
要求: 时间复杂度 O(n)O(n)
思路: 其实本题的答案在上一题就已经给出了,上一题我们通过层序遍历获得了每一层的节点,那么最大深度就是最大节点层数;
代码:
function maxDepth( root ) {
// write code here
const res = [];
function cd(root,index){
if(!root) return;
if(index >= res.length){
res.push([root.val])
} else {
res[index].push(root.val);
}
cd(root.right, index+1);
cd(root.left, index+1);
}
cd(root, 0);
return res.length;
}