队列是一种有序的线性表,队列的两端分别称为队首和队尾。队列只允许在队尾进行插入操作,在队首进行删除操作。
插入元素称为入队,删除元素称为出队。 队列常用链表或数组来实现。
#include <iostream>
#include <cstdlib>
using namespace std;
#define max 1000
//队列定义
struct element{
int key;
};
element queue[max];
int rear = 0;
int front = 0;
//判断队列是否为空
bool is_empty()
{
return front == rear;
}
//判断队列是否已满
bool is_full()
{
return rear == max;
}
//入队操作
void push(element item)
{
if (rear == max)
exit(1);
queue[rear++] = item;
}
//出队(删除)操作
void pop()
{
if (front == rear)
exit(1);
front ++ ;
}
//读取队首元素
element front1()
{
if (front == rear)
exit(1);
return queue[front];
}
int main()
{
return 0;
}