线性表
线性表的顺序存储结构
/*线性表的顺序存储结构 --顺序表*/
typedef struct {
int *data; //存储空间的基地址 类似于一维数组a[n]
int length; //链表的长度
}SqList;
线性表的链式存储结构
/*线性表的链式存储结构 --单链表*/
typedef struct LNode{
int data; //数据域
struct LNode *next; //指针域
}LNode,*LinkList;
栈
栈的顺序存储结构
/*栈的顺序存储结构 --顺序栈*/
typedef struct {
int *base; //存储空间的基地址 类似于一维数组a[n]
int *top; //指向该基地址的栈顶指针
int stackSize; //栈的大小
}SqStack;
栈的链式存储结构
/*栈的链式存储结构 --链式栈*/
typedef struct SNode{
int data;
struct SNode *next;
}SNode,*LinkStack;
队列
队列的顺序存储结构
/*队列的顺序存储结构 --顺序队列*/
typedef struct{
int *data; //存储空间的基地址 类似于一维数组a[n]
int front; //头指针 数组下标
int rear; //尾指针 数组下标
}SqQueue;
列的链式存储结构
/*队列的链式存储结构 --链式队列*/
typedef struct QNode{
int data; //数据域
struct QNode *next; //指针域
}QNode,*QueuePtr;
typedef struct {
QueuePtr front; //指向QueuePtr类型元素的 头指针
QueuePtr rear; //指向QueuePtr类型元素的 尾指针
}LinkQueue;