【发布时间】:2014-01-24 11:19:53
【问题描述】:
我知道如果没有 Inorder 和 Preorder/postorder 遍历,就无法构造一棵树。因为对于给定的(仅 Inorder/Preorder/postorder),可能会生成更多数量的树。是否有任何算法或机制可以计算给定的唯一树的数量(仅 Inorder/Preorder/postorder 遍历)。
Eg : a b c d e f g this is my Inorder traversal.
使用给定的中序遍历可以构造多少个独特的树。
我试过他们是谷歌,但没有一个解释清楚
任何帮助将不胜感激......
【问题讨论】:
-
one cannot construct a tree without having both Inorder and Preorder/postorder traversals这是一个大胆的声明:在 preorder(相当于 postorder) 以及关于它们从左到右的顺序的信息(显式地或按顺序(搜索树)),人们可以明确地重建一棵树。 (想一想,这似乎需要对 二叉树 的限制(用 inorder 暗示)。) -
(我认为没有两个相等的父子键就足够了——找到一个线性结构看起来很困难。)
标签: algorithm data-structures tree