代码示例
(1)Queue.h
1.头文件的声明
#pragma once
//头文件的声明
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<stdbool.h>
2.队列接口的定义
//链表接口定义
typedef int QDataType;
typedef struct QueueNode
{
struct QueueNode* next;
QDataType data;
}QNode;
//队列接口定义
typedef struct Queue
{
QNode* head;
QNode* tail;
int size;
}Que;
3.初始化和销毁函数的声明
//队列初始化
void QueueInit(Que* pq);
//队列销毁
void QueueDestroy(Que* pq);
4.入队列和出队列函数的声明
//插入
void QueuePush(Que* pq, QDataType x);
//删除
void QueuePop(Que* pq);
5.查找队头、查找队尾函数的声明
//查找队头元素
QDataType QueueFront(Que* pq);
//查找队尾元素
QDataType QueueBack(Que* pq);
6.判空以及长度计算函数的声明
//判断是否为空
bool QueueEmpty(Que* pq);
//计算长度
int QueueSize(Que* pq);