6.6.1 树的双亲表示法

树的双亲链表存储表示
  const MAX_TREE_SIZE = 100;
  typedef struct {       // 结点结构
   ElemType data;
   int parent;         // 双亲位置域
  } PTNode;
  typedef struct {       // 树结构
   PTNode nodes[MAX_TREE_SIZE];
   int r, n;          // 根的位置和结点数
  } PTree;

 
   
 
  和二叉树的双亲链表相类似,结点中只设一个指向双亲的指针,并对无序树不需要设子树位置的标志。所有结点存储在一个地址连续的存储空间中。

  例如,左图所示树的双亲链表如下所示。

data
parent
0
A
-1
B
0
E
1
H
2
I
2
J
2
C
0
D
0
F
7
G
7
K
9
1
2
r=0
3
n=11
4
5
6
7
8
9
10