循环队列的顺序存储实现
2017-11-20 14:51
232 查看
/*用数组实现队列的顺序存储*/ #include <stdio.h> #define MaxSize 20 #define ElementType int #define ERROR -1 struct QNode{ ElementType Data[MaxSize]; int front; int rear; }; typedef struct QNode *Queue; //循环队列无法区分队列满和队列空 /* 解决方法: 1.使用额外标记:Size或者Tag域 2.仅使用n-1个数组空间 */ //这里使用第二种方法 void AddQ(Queue PtrQ,ElementType item) { if((PtrQ->rear+1)%MaxSize==PtrQ->front){ printf("Queue is full."); return; } PtrQ->rear=(PtrQ->rear+1)%MaxSize; PtrQ->Data[PtrQ->rear]=item; } ElementType DeleteQ(Queue PtrQ) { if(PtrQ->rear==PtrQ->front){ printf("Queue is empty."); return ERROR; }else{ PtrQ->front=(PtrQ->front+1)%MaxSize; return PtrQ->Data[PtrQ->front]; } } int main() { return 0; }
相关文章推荐
- 顺序存储实现队列 循环队列 好麻烦
- 采用顺序存储实现循环队列的初始化、入队、出队操作。
- C++实现循环队列之顺序存储
- 数据结构之循环队列(顺序表存储)——C++模板类实现
- 循环队列 顺序存储 C实现
- 队列顺序循环存储实现
- 循环队列-顺序存储-Java实现
- 循环队列-顺序存储-c语言实现
- 队列的顺序存储实现—循环队列
- 数据结构(C实现)------- 顺序队列(循环队列之少用一个存储空间实现) .
- 顺序存储循环队列
- 队列-顺序存储-简单实现
- 数据结构学习之循环队列(顺序存储)
- 线性结构--->循环队列的顺序储存实现
- 循环顺序队列的实现
- 数据结构之队列的顺序表示及其实现(循环队列)
- 循环队列——队列的顺序表示与实现(c语言)
- 队列的顺序表示及实现,循环队列
- 循环队列——队列的顺序表示和实现
- java实现循环队列(顺序队列)