第1关:实现一个顺序存储的队列
本关任务:实现 step1/SeqQueue.cpp 中的SQ_IsEmpty
、SQ_IsFull
、SQ_Length
、SQ_In
和SQ_Out
五个操作函数,以实现判断队列是否为空、是否为满、求队列长度、队列元素入队和出队等功能。
/*************************************************************
date: April 2017
copyright: Zhu En
DO NOT distribute this code without my permission.
**************************************************************/
// 循环顺序的队列实现文件
/
#include <stdio.h>
#include <stdlib.h>
#include "SeqQueue.h"
SeqQueue* SQ_Create(int maxlen)
// 创建顺序队列, 队列最多存储maxlen个队列元素。
{
SeqQueue* sq=(SeqQueue*)malloc(sizeof(SeqQueue));
sq->data=(T*)malloc(sizeof(T)*(maxlen+1));
sq->front=sq->rear=0;
sq->max=maxlen+1;
return sq;
}
void SQ_Free(SeqQueue* sq)
// 释放队列空间,以删除队列。
{
free(sq->data);
free(sq);
}
void SQ_MakeEmpty(SeqQueue* sq)
// 将队列置空。
{