剑指offer 38. 二叉树的深度

时间:2022-05-23 16:21:52

38. 二叉树的深度

题目描述

输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。
 1 class Solution {
 2 public:
 3     // 前序递归遍历,分别统计左右子树的高度
 4     int preOrder(TreeNode* pRoot){
 5         if(pRoot){
 6             int leftH = preOrder(pRoot->left);
 7             int rightH = preOrder(pRoot->right);
 8             if(leftH >= rightH){
 9                 return leftH   1;
10             }else{
11                 return rightH   1;
12             }
13         }
14         return 0;
15     }
16     
17     int TreeDepth(TreeNode* pRoot)
18     {
19         return preOrder(pRoot);
20     }
21 };