【发布时间】:2013-10-17 12:41:47
【问题描述】:
我被要求绘制一个二叉搜索树,它的中序遍历和后序遍历都以"ATTA" 的顺序处理节点。我尝试了许多不同的方法,但最终只适用于其中一种遍历方法。
【问题讨论】:
标签: binary-tree inorder postorder
我被要求绘制一个二叉搜索树,它的中序遍历和后序遍历都以"ATTA" 的顺序处理节点。我尝试了许多不同的方法,但最终只适用于其中一种遍历方法。
【问题讨论】:
标签: binary-tree inorder postorder
我相信您只是在谈论常规的二叉树,因为创建这样的二叉 搜索 树是不可能的。
鉴于后序以A 结尾,我们知道根必须是A。
假设我们只有 2 个 A 的顺序,并且根是 A,我们知道根的左子树或右子树都是空的。
鉴于后序中倒数第二个节点是T,我们知道根的子节点必须是T。
从这里我们可以检查剩下的 4 种可能性:
A A A A
/ / \ \
T T T T
/ \ / \ / \ / \
A T T A A T T A
Inorder ATTA TTAA ATAT ATTA
Postorder ATTA TATA ATTA TATA
所以唯一的可能是:
A
/
T
/ \
A T
...这不是二叉搜索树。
【讨论】: