首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何计算预序树数组中节点的深度?

如何计算预序树数组中节点的深度?
EN

Stack Overflow用户
提问于 2015-04-11 19:28:39
回答 1查看 397关注 0票数 1

例如,一棵树

代码语言:javascript
复制
             2
           /   \
          1     3
         / \   / \
       null n n   null

按顺序存储为数组: 2,1,null,null,3,null,null。如何计算节点的深度?或者如何将预排序转换为深度优先?

EN

回答 1

Stack Overflow用户

发布于 2015-04-15 17:48:37

仅考虑到预订单遍历,这是不可能的。以你的例子为例:

% 2,% 1,null,null,% 3,null,null

有几种可能的解决方案来重建树。这里有两个:

代码语言:javascript
复制
         2
       /   \
      1     3
     / \   / \
   null n n   null

         2
       /   \
      1     3
     /     / \
   null   n   null
   /
 null

为了重建这棵树,你也需要后期订单。然后,您可以使用解决方案的下一个链接:http://www.geeksforgeeks.org/full-and-complete-binary-tree-from-given-preorder-and-postorder-traversals/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29577351

复制
相关文章

相似问题

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