1.双亲表示法:
#define MAX_TREE_SIZE 100
typedef struct PTNode {
ElemType data;
int parent;
}PTNode;
typedef struct {
PTNode nodes[MAX_TREE_SIZE];
int r,n;
}
树的双亲表示法示例
2.树的孩子链表存储表示
typedef struct CTNode {
int child;
struct CSNode *next;
}* ChildPtr;
typedef struct {
Elemtype data;
ChildPtr firstchild;
}CTBox;
typedef struct {
CTBox nodes[MAX_TREE_SIZE];
int n, r;
}CTree;
树的孩子链表表示法示例
3.树的孩子兄弟表示法
typedef struct CSNode {
ElemType data;
struct CSNode *firstchild, *nextsibling;
}CSNode, *CSTree;
树的二叉链表表示法示例