求高手解释下二叉树递归求深度问题

我的理解是,程序开始不停找左孩子的左孩子,程序执行到最左边的叶子节点D,此时D->lchild为空返回0给M。再访问D->rchild为空返回0给n。mn都为0就没法比较... 我的理解是,程序开始不停找左孩子的左孩子,程序执行到最左边的叶子节点D,此时D->lchild为空返回0给M。再访问D->rchild为空返回0给n。
m n都为0 就没法比较了啊!!!??
展开
 我来答
Soucula
推荐于2017-12-16 · TA获得超过3091个赞
知道小有建树答主
回答量:744
采纳率:93%
帮助的人:66.5万
展开全部
  1. 这个算法的意思是,当前树的深度等于其左子树和右子树中较深的那一个的深度再加1

    例如:您提供的图A的左子树深度为3,右子树的深度为3,此时A这棵树的深度就为4

  2. 再来考虑D和G,此时D的左子树深度为0,右子树深度为0,所以返回0+1 = 1

    同理G也返回1

  3. 因此C和F返回2,而B和E返回3,最终A返回4

chiconysun
2013-08-29 · TA获得超过2.2万个赞
知道大有可为答主
回答量:5410
采纳率:92%
帮助的人:2536万
展开全部
为0怎么没法比较呢?即使为0,也会返回1,并且还要按照刚才进入的一层层往回退再次比较的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式