首页 > 代码库 > 链式队列的实现

链式队列的实现

本文原创,转载请注明来自:http://blog.csdn.net/j903829182/article/details/38011661
#include<stdio.h>
#include<malloc.h>
typedef int DataType;

typedef struct qnode{//链式队列的结点

	DataType data;//数据部分
	struct qnode *next;//指向下一个结点
}LQNode;

typedef struct{

	LQNode *front;//队头指针
    LQNode *rear;//对尾指针

}LQueue;

//初始化队列
void QueueInitiate(LQueue *q){//初始化链式队列q

	q->front=NULL;//定义初始队尾指针下标值
	q->rear=NULL;//定义初始对头指针下标值
}


//非空否
int QueueNotEmpty(LQueue q){
//判断链式队列q非空否,非空则返回1,否则返回0
	if(q.front==NULL){
	
		return 0;
	}else{
	
		return 1;
	}
}


//入队列
void QueueAppend(LQueue *q,DataType x){

	//把数据元素值x插入链式队列q的队尾
	LQNode *p;
	p=(LQNode *)malloc(sizeof(LQNode));
	p->data=http://www.mamicode.com/x;>