#include<iostream>]
using namespace std;
#define MAXSIZE 50
typedef int ElemType;
//队列的储存结构
typedef struct Sque {
ElemType data[MAXSIZE];
int front, tail; //栈顶指针
};
//初始化
void initSque(Sque& s) {
s.front = s.tail = 0;
}
//判空
bool squeEmpty(Sque& s) {
return s.front == s.tail ? true : false;
}
//判满
bool squeFull(Sque& s) {
return s.tail == MAXSIZE - 1 ? true : false;
}
//进队列
int push(Sque& s, ElemType e) {
if (squeFull(s)) {
return 0;
}
s.data[s.tail] = e;
s.tail++;
}
//出队列
int pop(Sque& s, ElemType& e) {
if (squeEmpty(s)) {
return 0;
}
e = s.data[s.front];
s.front++;
if (s.front == s.tail != 0) {
s.front = s.tail = 0;
}
}
//读队列首元素
int getTop(Sque& s, ElemType& e) {
if (squeEmpty(s)) {
return 0;
}
e = s.data[s.front];
}
//获取队列元素个数
int length(Sque& s) {
return s.tail - s.front;
}
03-栈和队列-队列的顺序储存
于 2022-10-22 21:47:54 首次发布