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 };