gpt4 book ai didi

algorithm - BST 到链表并返回同一个 BST

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:26:09 27 4
gpt4 key购买 nike

因为我找不到有用的东西所以我在这里问我的问题:

我们如何在不使用任何额外空间的情况下将 BST 转换为中序链接列表,然后再转换回“相同”的 BST。

到目前为止我已经尝试过的(虽然仍在做):我尝试了 Morris Traversal 来链接到下一个有序的继任者,但它无法连接所有节点,仅适用于左子树和右子树,不适用于树的实际根。请建议我如何将 Tree 转换为 Linked List 并返回到 Same tree ...

最佳答案

要将树存储在列表中 - 您至少需要两个列表:一个用于前序遍历,另一个用于中序遍历。

幸运的是 - 由于树是 BST,中序遍历只是排序列表。

因此,你可以存储前序遍历(你可以尝试原地做)并且通过在重构中对元素进行排序,你可以获得中序遍历。

This post讨论了如何根据树的中序遍历和预序遍历重建树。

关于algorithm - BST 到链表并返回同一个 BST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12563432/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com