队列的链式存储称为链式队列。链式队列就是一个特殊的单链表,对于这种特殊的单链表,它的插入和删除操作规定在单链表的不同端进行。链式队列的队首和队尾指针分别用front和rear表示。
链式队列要掌握以下基本操作:
1、建立一个空的链式队列
2、判断链式队列是否为空
3、输出链式队列各个结点的值
4、取得链式队列的队首的结点值
5、对链式队列中插入一个值为x的结点
6、删除链式队列中队首节点
“队头删除,队尾插入”
运行环境:Dev-C++5.11
以下是头文件
#ifndef LNKQUEUE_H_INCLUDED
#define LNKQUEUE_H_INCLUDED
#include <stdio.h>
#include <stdlib.h>
typedef struct link_node
{
int info;
struct link_node *next;
}N;
typedef struct
{
N *front ,*rear;
}queue;
/*建立一个空的链式队列*/
queue *init()
{
queue *qu;
qu=(queue*)malloc(sizeof(queue));
qu->front=NULL;
qu->rear=NULL;
return qu;
}
/*判断链式队列是否为空*/
int isempty(queue *qu)
{
return (qu->front?0:1);
}
/*取得链式队列队