二叉树的存储

文章介绍了二叉树的三种不同的存储方式:1)使用PTNode结构体实现的双亲表示法,顺序存储每个节点及其父节点信息;2)使用CTNode结构体表示的孩子表示法,链式存储每个节点的第一个孩子和下一个兄弟节点;3)孩子兄弟表示法,通过CSNode结构体链式存储每个节点的左孩子和右兄弟。
摘要由CSDN通过智能技术生成

二叉树的双亲表示法(顺序存储)

#define MAX_TREE_SIZE 100

typedef struct {

        int data;

        int parent;



}PTNode;

typedef struct {

        PTNode nodes[MAX_TREE_SIZE];

        int n;



}PTree;

二叉树的孩子表示法(顺序+链式存储)

struct CTNode{

        int child;

        struct CTNode* next;



};

typedef struct {

        int data;

        struct CTNode* firstChild;

}CTBox;

typedef struct {

        CTBox nodes[MAX_TREE_SIZE];

        int n, r;

}CTree;

二叉树的孩子兄弟表示法(链式存储)

typedef struct CSNode {

        int data;

        struct CSNode* firstchild, * nextsibling;//左孩子与右兄弟

}CSNode,*CSTree;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值