题目描述
输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。
示例1
输入
{1,2,3,4,5,#,6,#,#,7}返回值
4
思路
比较经典的递归算法,
root的高度=Max(1+root左子树高度,1+root右子树高度)
代码
/* function TreeNode(x) {
this.val = x;
this.left = null;
this.right = null;
} */
function TreeDepth(pRoot)
{
// write code here
let p = pRoot
if(!p) return 0
let left = TreeDepth(p.left)
let right = TreeDepth(p.right)
return Math.max(left,right)+1
}
运行环境:Javascript_V8
运行时间:9ms
占用内存:5240KB