数据结构——树——孩子兄弟表示法
数据结构——树——孩子兄弟表示法
任意一棵树,它的结点的第一个孩子如果存在就是唯一的,它的右兄弟如果存在也是唯一的。因此,我们设置两个指针,分别指向该结点的第一个孩子和此结点的右兄弟。
结点结构如表6-4-9所示。
其中 data是数据域,firstchikd为指针域,存储该结点的第一个孩子结点的存储地址,rightsib是指针域,存储该结点的右兄弟结点的存储地址。
结构定义代码如下。
/*树的孩子兄弟表示法的结构定义*/
#define MAX_TREE_SIZE 100
typedef int TElemType;/*树结点的数据类型*/
typedef struct CSNode
{
TElemType data;
struct CSNode* firstchild, * rightsib;
} CSNode,*CSTree;
对于图6-4-1的树来说,这种方法实现的示意图如图6-4-6所示。
还没有评论,来说两句吧...