一、队列
1、队列特点:
①、线性结构、具有队头和队尾,有且只有一个直接前驱和直接后继。
②、只允许在一段插入(入队)、另一端删除(出队),且先进先出。
二、循环队列
顺序队列是队列得顺序存储结构,通过改进后成为循环队列。
1、规定
①、front表示队头得前一个位置下标。
②、rear表示队尾位置下标。
③、队列空时:front = rear
。
2、改进后循环队列
三、用C语言实现顺序队列
1、构造存储结构
#define SIZE 8
typedef int datatype;
typedef struct seqqueue
{
datatype data[SIZE]; // 数据域
int front; // 队头前一个位置下标
int rear; // 队尾位置下标
}seq_queue, *seq_pqueue;
2、初始化
①申请内存空间
②front = rear = SIZE - 1
void init_seqqueue(seq_pqueue *queue)
{
(*queue) = (seq_pqueue)malloc(sizeof(seq_queue));
if (NULL == (*queue))
{
perror("malloc");
exit(1);
}