C++ 普通队列

#include <iostream>
using namespace std;
#define MAX 50
//普通队列
struct Queue{
	int data[MAX];
	int front;//队首指针 
	int rear;//队尾指针 
}; 

//初始化队列
void init(Queue &q){
	q.front = q.rear = 0;
} 
//判断是否空
int isEmpty(Queue q){
	return q.front==q.rear;//0不是空 
} 
//入队
void enQueue(Queue &q, int ele){
	if(q.rear == MAX-1){//判断是否为满,也可以是 MAX。这里为了和循环队列相一致,也浪费一个空间 
		return ;
	}
	q.data[q.rear] = ele;
	q.rear++;
} 
//出队
void deQueue(Queue &q, int &num){
	if(isEmpty(q)){//判断是否为空 
		cout<<"队列为空\n";
		return ;
	}
	num = q.data[q.front];
	q.front++;
	//retrun q.data[q.front++]
} 

int main(){
	
	Queue q;
	init(q);
	
	enQueue(q,6);

	
	int num=0;
	deQueue(q,num);
	cout<<num<<" ";


	return 0;
}
发布了167 篇原创文章 · 获赞 52 · 访问量 6933

猜你喜欢

转载自blog.csdn.net/qq_42363032/article/details/103825073