【数据结构】3.4顺序队列(附实现代码)队列是⼀端进(队尾进),⼀端出(队⾸出)也即FIFO(先进先出)的数据结构。
⽤数组来实现顺序队列。
下⾯是顺序队列的实现代码:
#include<stdio.h>
#define MAXSIZE 50
#define ElemType int
typedef struct{
ElemType data[MAXSIZE];
int front, rear;
}SqQueue;
void init(SqQueue &Q);
bool Push(SqQueue &Q, ElemType x);
bool Pop(SqQueue &Q, ElemType & x);
void Traver(SqQueue Q);
int main(void)
{
int x;
SqQueue Q;血藤的功效与作用
init(Q);
Push(Q, 1);
茶花几月开花Push(Q, 2);
Push(Q, 3);
Push(Q, 4);
Push(Q, 5);
Traver(Q);
if(Pop(Q,x))
马应龙痔疮膏怎么用
{
printf("Pop succeed!\n");
printf("The data popped out is %d\n",x);
创意产品
}
return0;
}
void init(SqQueue &Q)科普类文章
{
Q.front = 0;道德天尊
}
bool Push(SqQueue &Q, ElemType x)
{
ar == MAXSIZE)
return fal;
Q.ar++] = x;//赋值,然后rear后移盾安九龙城
return true;
}//每⼀次push完,rear都在最后⼀个存储数据位置的后⼀位
bool Pop(SqQueue &Q, ElemType & x)
{
if(Q.front == Q.rear)
return fal;
x = Q.data[Q.front++];
return true;
}
void Traver(SqQueue Q) //从队⾸开始向后遍历{
int p = Q.front;
while(p != Q.rear)
作文好句printf("%d\t",Q.data[p++]);
printf("\n");
}