0

问题似乎很简单。您必须使用相同的树并将右子指针作为列表中的下一个指针。

所以我使用的算法如下:

def inorder(node, prev, head):
        if(node == NULL):
            return;
        inorder(node.left, prev, head)

        node.right = prev
        if(!prev):
            head = node
        prev = node 

        inorder(node.right, prev, head)

谁能指出我到底哪里出错了,因为它似乎不起作用。

4

1 回答 1

1

我看到的第一个错误是您正在分配给headprev内部,并inorder希望这会以某种方式影响之前对. 但事实并非如此。headprevinorder

相反,您需要做的是获得所需的inorder返回信息,然后在父调用中分配它们。

于 2012-07-01T14:47:58.650 回答