链的储存结构定义
单链表 结点数据域 结点的指针域
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode,*LinkList
链栈 数据域 结点的指针域
typedef struct StackNode
{
ElemType data;
struct StackNode *next;
}StackNode,*LinkStack
链队 数据域 (结点指针域 队头指针 队尾指针)
typedef struct QNode
{
QElemType data;
struct QNode *next;
}QNode,*QueuePtr;
typedef struct
{
QueuePtr front;
QueuePtr rear;
}LinkQueue;
链串 数组 (结点指针 头指针 尾指针) 长度
#define CHUNKSIZE 80
typedef struct Chunk
{
char ch[CHUNKSIZE];
struct Chunk *next;
}Chunk;
typedef struct
{
Chunk *head,*tail;
int length;
}LString;
双向链表 数据域 直接前驱 直接后继
typedef struct DuLNode
{
ElemType data;
struct DuLNode *prior;
struct DuLNode *next;
}DuLNode,*DuLinkList;
顺序表的数据结构定义
顺序表 数组基地址 最大容量
#define MAXSIZE 100
typedef struct
{
ElemType *elem;
int length;
}SqList;
顺序栈 栈底指针 栈顶指针 最大容量
#define MAXSIZE 100
typedef struct
{
SElemType *base;
SElemType *top;
int stacksize;
}SqStack;
顺序队列 数组基地址 头指针 尾指针(并不算指针,为int,起指针作用)
#define MAXSIZE 100
typedef struct
{
QElemType *base;
int front;
int rear;
}SqQueue;
顺序串 数组 长度
#define MAXLEN 255
typedef struct
{
char ch[MAXLEN+1];
int length;
}SString;