《数据结构》-树(孩子链表表示法)
孩子链表定义把每个结点的孩子结点排列起来,看成是一个线性表,且以单链表作为存储结构,则 n 个结点又 n 个孩子链表(叶子的孩子链表为空表)。而 n 个头指针又组成一个线性表,为了便于查找,可采用顺序存储结构。示例对应的树为C语言类型描述孩子结点结构typedef struct CTNode{int child;struct CTNode *next;}*ChildPtr;双亲结点结构typede
·
孩子链表定义
把每个结点的孩子结点排列起来,看成是一个线性表,且以单链表作为存储结构,则 n 个结点又 n 个孩子链表(叶子的孩子链表为空表)。而 n 个头指针又组成一个线性表,为了便于查找,可采用顺序存储结构。
示例

对应的树为

C语言类型描述
孩子结点结构
typedef struct CTNode
{
int child;
struct CTNode *next;
}*ChildPtr;
双亲结点结构
typedef struct
{
TElemType data;
ChildPtr firstchild;
}CTBox;
树结构
typedef struct
{
CTBox nodes[MAX_TREE_SIZE];
int n,r;// 结点数和根节点的位置
}
特点
找孩子容易,找双亲难
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)