队列定义
队列:是一种特殊的线性表只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出
队列的基本操作
入队列:进行插入操作的一端称为队尾
出队列:进行删除操作的一端称为队头
队列也可以顺序表(数组)和链表的结构实现,由于队列支持尾插和头删,所以链表更适合实现队列
队列的实现
C语言带头尾指针的单链表实现队列:
队列的定义
typedef int Data;
typedef struct queuenode{
Data data;
struct queue* _next;
}queuenode;
typedef struct queue{
queuenode* _start;
queuenode* _end;
}queue;
队列的初始化
void init(queue* qe){
qe->_end = qe->_start = NULL;
}
队列增容
queuenode* createqe(Data data){
queuenode* node =