数据结构之顺序循环队列
来源:互联网 发布:ovid数据库 编辑:程序博客网 时间:2024/05/16 00:50
一、存储结构
#define MAXSIZE 10typedef struct{int data[MAXSIZE];int front; //头指针:不空时指向队头元素int rear; //尾指针:不空时指向队列尾元素的下一个位置}SqQueue;
二、基本操作
1、初始化队列
void InitQueue(SqQueue &Q){Q.front = Q.rear = 0;}
2、清空队列
void ClearQueue(SqQueue &Q){Q.front = Q.rear = 0;}
3、求队列长度
int QueueLength(SqQueue Q){return (Q.rear - Q.front + MAXSIZE) % MAXSIZE;}
4、入队列
int EnQueue(SqQueue &Q, int e){if ((Q.rear+1) % MAXSIZE == Q.front)return 0;//队满Q.data[Q.rear] = e;Q.rear = (Q.rear+1) % MAXSIZE;return 1;}
5、出队列
int DeQueue(SqQueue &Q, int &e){if(Q.front == Q.rear)return 0;//队空e = Q.data[Q.front];Q.front = (Q.front+1) % MAXSIZE;return 1;}
6、遍历队列
void QueueTraverse(SqQueue Q){int i;putchar('|');for(i = Q.front; i % MAXSIZE != Q.rear; i++)printf(" %d |", Q.data[i]);putchar('\n');}
完整测试代码传送门:http://download.csdn.net/detail/u013071074/7423945
0 0
- 数据结构之顺序循环队列
- 数据结构之顺序队列(循环队列)
- 数据结构-循环队列顺序存储
- 数据结构-- 队列 循环与顺序
- 数据结构学习之循环队列(顺序存储)
- 数据结构之顺序队列
- 数据结构之顺序队列
- 数据结构之顺序队列
- 数据结构之顺序队列
- 数据结构之顺序队列
- 《数据结构》队列的顺序表示--循环队列
- 数据结构---队列---循环队列---顺序存储
- 数据结构之循环队列
- 数据结构之循环队列
- 数据结构之循环队列
- 数据结构之循环队列
- 数据结构之循环队列
- 数据结构之循环队列
- POJ 1654 Area (有向面积求多边形面积)
- 敏捷中最容易忽视却最重要的环节
- java.util.Properties工具类
- 4 - 谁都能写的操作系统
- c++中 namespace的应用方法
- 数据结构之顺序循环队列
- 难得静下心来
- POJ 1265 Area (有向面积, pick 定理)
- 初学URDF总结
- IOS_多线程_NSThread+NSOperation+GCD(Grand Central Dispatcher)
- CKEditor&ckfindtor
- C++ 虚函数表解析
- Top 10 Mistakes Java Developers Make
- cpio命令的使用