二叉树的深度
题目:输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。
这道题用递归的方法非常的简单,一颗树的最大深度,其实可以看作是它的左子树和右子树中,最大的那个子树的深度+1,就是这棵树最大的深度。边界条件是当遍历到空节点的时候,深度为0,此时返回0就好了。
c++代码如下:
1 class Solution { 2 public: 3 int TreeDepth(TreeNode* pRoot) 4 { 5 if(!pRoot) return 0; 6 return max(TreeDepth(pRoot->left),TreeDepth(pRoot->right)) + 1; 7 } 8 };
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步