数据结构(C语言) 线性表和二叉树的存储结构

来源:互联网 发布:巨灵数据库β系数 编辑:程序博客网 时间:2024/06/07 10:38
//线性表的动态分配顺序存储结构
#define LIST_INIT 100
#define LISTINCREMENT 10
typedef struct {
ElemType *base;
int length;
int listsize;
}SqList;
List L;
L.base=(ElemType)malloc(INIT_SIZE * sizeof(ElemType));
F:L.base[1],L.base[2],...,L.base[length-1]




//线性表的单链表存储结构
typedef struct Lnode{
ElemType data;
struct Lnode *next;
}Lnode,*LinkList;


Lnode *p1,*p2;
p1=(Lnode *)malloc(sizeof(Lnode));
p1->next,p2=p1;


//二叉树的顺序存储结构
#define MAX_TRUE_SIZE 100
typedef TElemType SqBiTree[MAX_TREE_SIZE];
//仅适用于完全二叉树。


//二叉树的链式存储结构
typedef struct BiNode{
TElemType data;
struct BiNode *lchild,*rchild;
}BiNode,*BiTree;


BiNode *a,*b;
a=(BiNode *)malloc(sizeof(BiNode));
a->lchild,a->rchild,
阅读全文
1 0