空队列:就是头指针和尾指针指向同一个空间。
插入元素,从队尾进,处理一下队尾,然后,若队列为空,注意进入第一个元素时的情况就ok,都很简单。
删除元素:就从队头删除,由于加入了头结点,所以比较方便对于队头的处理。
queue.h
#include<iostream>
using namespace std;
struct list
{
int data; //队列中数据
list *next; //表结构体中的链表,用于指向下一个元素
};
class queue
{
private:
list *front;
list *rear;
public:
queue()
{
front=rear=new list; //初始化,一定要注意分配空间,队列为空,注意头结点和头指针的区别
front->next=NULL;
}