码迷,mamicode.com
首页 > 其他好文 > 详细

顺序循环队列基本操作(三)

时间:2020-06-27 19:54:01      阅读:66      评论:0      收藏:0      [点我收藏+]

标签:条件   enqueue   指针   初始化   ret   queue   define   str   fine   

/*增设表示元素个数的数据*/
#include<stdio.h>
#define MaxSize 10
typedef char ElemType;
typedef struct 
{
	ElemType data[MaxSize];
	int front,rear;
	int size;
}SqQueue;
bool InitQueue(SqQueue &q)
{
	q.front=q.rear=0;		//初始化队头队尾指针
	q.size=0;
	return true;
}
bool EmptyQueue(SqQueue q)
{
	if(q.size==0)		//队空的条件:size=0
		return true;
	return false;
}
bool EnQueue(SqQueue &q,ElemType e)
{
	if(q.size==MaxSize)		//队满的条件:size==MaxSize
		return false;
	q.data[q.rear++]=e;
	return true;
}
bool OutQueue(SqQueue &q,ElemType &e)
{
	if(q.rear==q.front)		//判空
		return false;
	e=q.data[q.front++];
	return true;
}
bool HeadQueue(SqQueue q,ElemType &e)
{
	if(q.rear==q.front)
		return false;
	e=q.data[q.front];
	return true;
}
void main()
{
	SqQueue q;
	InitQueue(q);
	ElemType e;
	printf("The Queue is %s\n",(EmptyQueue(q)?"Empty!":"UnEmpty!"));
	EnQueue(q,‘a‘);
	EnQueue(q,‘b‘);
	EnQueue(q,‘c‘);
	HeadQueue(q,e);
	printf("Queue_Head=%c\n",e);
	OutQueue(q,e);
	HeadQueue(q,e);
	printf("Queue_Head=%c\n",e);
}

  

顺序循环队列基本操作(三)

标签:条件   enqueue   指针   初始化   ret   queue   define   str   fine   

原文地址:https://www.cnblogs.com/-slz-2/p/13199481.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!