数据结构 循环队列的输入输出
来源:互联网 发布:三维坐标旋转矩阵 编辑:程序博客网 时间:2024/06/05 19:43
#include<stdio.h>#include<stdlib.h>#define MAX 100#define OK 1#define OVERFLOW -1#define ERROR -2typedef int Status;typedef int QElemType;typedef struct{ QElemType *base; int front;//头 int rear;//尾}SqQueue;Status InitQueue(SqQueue &Q){//构造 if(!(Q.base=(QElemType*)malloc(MAX*sizeof(QElemType)))) exit(OVERFLOW); Q.front=Q.rear=0; return OK;}Status QueueLength(SqQueue Q){//返回长度 return (Q.rear-Q.front+MAX)%MAX;}Status EnQueue(SqQueue &Q,QElemType e){//尾插 if((Q.rear+1)%MAX==Q.front) return ERROR; Q.base[Q.rear]=e; Q.rear=(Q.rear+1)%MAX; return OK;}Status DeQueue(SqQueue &Q,QElemType &e){//返回队头 if(Q.front==Q.rear) return ERROR; e=Q.base[Q.front]; Q.front=(Q.front+1)%MAX; return OK;}int main(){ int n,i; QElemType e; SqQueue Q; InitQueue(Q); printf("循环队列的长度为:"); scanf("%d",&n); printf("输入循环队列:\n"); for(i=0;i<n;i++){ scanf("%d",&e); EnQueue(Q,e); } printf("循环队列的长度为:"); printf("%d\n",QueueLength(Q)); printf("循环队列为:\n"); for(i=0;i<n-2;i++){ DeQueue(Q,e); printf("%d ",e); } return 0;}
0 0
- 数据结构 循环队列的输入输出
- 循环队列输入输出
- 《数据结构》队列的顺序表示--循环队列
- 【数据结构】队列-循环队列
- 【数据结构-队列】循环队列
- 数据结构(队列):循环队列
- 关于数据结构循环队列的取余%
- 用c++编写的数据结构循环队列
- 简单数据结构的实现之循环队列
- 数据结构的C实现_循环队列
- 数据结构循环队列的实现c程序
- C++数据结构--循环队列的实现
- 数据结构 循环队列的基本操作
- 【数据结构】静态循环队列的操作
- 数据结构的C实现_循环队列
- 数据结构之循环队列的实现
- [数据结构] 队列的循环数组实现
- 【数据结构】循环队列的实现(c++)
- R编辑器Rstudio学习笔记——基本功能与操作
- Unity3D研究院之将场景导出XML或JSON或二进制并且解析还原场景《二》
- 运用boost::filesystem和boost::program_options的小实例
- C# 利用sql语句生成新的数据表
- 常用计算机视觉实验图像库和图像集
- 数据结构 循环队列的输入输出
- Java Thread 理论与实践: 处理 InterruptedException
- 浅析杀毒软件开发原理
- Django 的第一个项目
- Java Socket实战之六 使用NIO包实现Socket通信
- C#实现从dll程序集中动态加载窗体
- Binary Tree Zigzag Level Order Traversal
- lucene 高级搜索
- 打开浏览器并跳转到某一url地址