(数据结构)存储结构2

ElemType根据题目要求更换
一、顺序存储结构
(1)线性表
typedef struct{
ElemType data [MaxSize]; //顺序表的元素
int length; //顺序表的当前长度
}SqList; //顺序表的类型定义

(2)栈
typedef struct{
ElemType data [MaxSize]; //存放栈中元素元素
int top; //栈顶指针
}SqStack;

(3)队列
typedef struct{
ElemType data [MaxSize]; //存放队列元素
int front,rear; //队头指针和队尾指针
}SqQueue;

(4)二叉树
typedef ElemType SqBiTree[MaxSize];
SqBiTree bt;

一、顺序存储结构
typedef struct{
ElemType data [MaxSize]; //顺序表的元素
{*}
}Sq#; //顺序表的类型定义
*线性表 int length; //顺序表的当前长度
*栈 int top; //栈顶指针
*队列 int front,rear; //队头指针和队尾指针
#线性表SqList
#栈SqStack
#队列SqQueue

二、链式存储结构
(1)线性表
typedef struct Lnode{ //定义单链表结点类型
ElemType data; //数据域
struct LNode *next; //指针域
}Lnode,*LinkList;

(2)栈
typedef struct LinkNode{
ElemType data; //数据域
struct LinkNode *next; //指针域
}LinkNode,*LiStack; //栈类型定义

(3)队列
typedef struct LinkNode{ //队结点类型定义
ElemType data;
struct LinkNode *next;
}LinkNode;
typedef struct { //链队类型定义
LinkNode *front,*rear; //队列的队头和队尾指针
}LinkQueue;

(4)二叉树
typedef struct BiTNode{
ElemType data; //数据域
struct BiTNode *lchild,*rchild; //左右孩子指针
}BiTNode,*BiTree;

二、链式存储结构
typedef struct A{ //定义单链表结点类型
ElemType data; //数据域
struct A B; //指针域
}A,C;
A
线性表Lnode
栈LinkNode
队列LinkNode
二叉树BiTNode
B
线性表
next
next
队列
next
二叉树lchild,rchild
C
线性表
LinkList
LiStack
队列
二叉树*BiTree

Bitree *T是声明一个类型,*T是一个Bitree类型的指针。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章