首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >求树的最大深度的问题

求树的最大深度的问题
EN

Stack Overflow用户
提问于 2019-10-20 09:37:24
回答 1查看 37关注 0票数 1
代码语言:javascript
复制
maxDepth('1') = max(maxDepth('2'), maxDepth('3')) + 1
                               = 2 + 1
                                  /    \
                                /         \
                              /             \
                            /                 \
                          /                     \
               maxDepth('2') = 1                maxDepth('3') = 1
= max(maxDepth('4'), maxDepth('5')) + 1
= 1 + 1   = 2         
                   /    \
                 /        \
               /            \
             /                \
           /                    \
 maxDepth('4') = 1     maxDepth('5') = 1

最近,我学习了求树的最大深度的算法,即

  1. 返回0,如果是叶
  2. ,则获取左、右子树最大深度的最大值,并为当前节点添加1。max_depth =max(左子树的最大深度,

(最大右子树深度)+ 1

但是,对于上面的图,如果我们的树是:

代码语言:javascript
复制
1
    2
    3
      4
      5

基于该算法,右子树的最大深度是否等于0?另外,节点4和5的最大深度应该是0,对吗?请告诉我我的推理中哪一部分是错误的。

EN

回答 1

Stack Overflow用户

发布于 2019-10-20 09:43:18

根据算法,maxDepth(3) , maxDepth(4) and maxDepth(5)应该是zero,因为它们是叶。

代码语言:javascript
复制
                                 1
                              /    \
                            /         \
                          /             \
                        /                 \
                      /                     \
                     2                       3
                   /   \
                 /       \
               /           \
             /               \
           /                  \
          4                    5

maxDepth(3) = maxDepth(4)  = maxDepth(5) = 0
maxDepth(2) = max(maxDepth(4), maxDepth(5)) + 1 = max(0, 0)+1 = 1
maxDepth(1) = max(maxDepth(2), maxDepth(3)) + 1 = max(1, 0)+1 = 2
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58471695

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档