题目描述
输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。
这个就是采取递归的方法,单独写一个函数,参数是一个节点和该节点所在的深度,每次讲节点改为左右子树节点进行递归,直到节点为空,将此时的深度与目前的最大深度比较取最大值即可。
/* function TreeNode(x) { this.val = x; this.left = null; this.right = null; } */ function TreeDepth(pRoot) { let depth = 0; if(!pRoot){return depth;} function deepIn(root, l){ if(root){ l++; deepIn(root.left, l); deepIn(root.right, l); }else{ depth = depth>l?depth:l; } } deepIn(pRoot, 0); return depth; }
来源:https://www.cnblogs.com/Jacob98/p/12580271.html