0

有人问我一个问题,当我遍历我的二叉树时,是否可以获得当前节点之上的节点?作为一个双链表。

4

1 回答 1

2

如果您将其构建为双链接,那么可以,转到“父”属性。抽象例子:

struct node {
    struct node *parent; // << this is the parent, just access it
    struct node *rchild;
    struct node *lchild;
    int val;
}

否则,您将需要在每次访问子节点时缓存前一个节点。

请注意,双向链接列表与二叉树不同在列表中,每个项目都有一个孩子)。

于 2012-05-05T09:51:57.407 回答