概念
队空条件:fron=rear=NULL
队满条件:不考虑
进队操作:将新的节点插入到链表尾。
出队操作:删除链表第一个节点。
代码
注意出队和入队操作
入队操作要考虑到两种情况:
1入队前,队为空时,队首和队尾指针都指向新的节点。
2.入队后,队不为空,只动队尾指针就行。
出队操作要考虑三种情况:
1.原队为空,则返回异常。
2.原队为只有一个节点,则删除节点后,都指向NULL;
3.其他情况,则只操作队尾就行。
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#define ERROR 0
#define OK 1
typedef int status;
#define ElemeType_LQu int //链式栈数据类型
typedef struct qNode {
ElemeType_LQu data;
struct qNode* next;
}QuNode, * LQueue;
typedef struct
{
LQueue front;//队首节点指针
LQueue rear;//队尾节点指针
}LiQueue,*liqueue;
/**************链式队列*********************/
void InitQueu