给定一个预定的二叉树访问,构造一个具有相同的预定访问的二叉搜索树。 (如果可能的话)

时间:2019-01-13 15:56:54

标签: algorithm binary-tree binary-search-tree preorder

我正在尝试解决此问题:“给出了一个二叉树,检查他的预订访问,并用相同的预订访问构建一棵二叉搜索树。演示是否总是可能的,如果没有给出示例,何时这是不可能的。” 有什么帮助吗?我需要编写伪代码并给出时间复杂性,但是我对构建一个二进制搜索树有很多疑问,对于每个可能的二进制树都具有相同的预访问。

1 个答案:

答案 0 :(得分:1)

如果您使用经典算法插入二叉搜索树,即执行搜索,并在找到的NULL指针上停止搜索以放置新节点,则只需插入在空树中,预排序序列将产生恰好具有给定预排序序列的二叉树。

尝试一下。遍历任何预序列并将其插入一棵空树中,您将意识到这一点。

希望对您有所帮助。欢迎堆栈溢出!