结构体类型![结构体类型](https://i-blog.csdnimg.cn/blog_migrate/dfea2c83941e101a233049371ea92693.png)
struct queue {
int data[100]; //队列的主体,用于存储内容
int head; //队首
int tail; //队尾
};
概念:
队列是一种特殊的线性结构,只允许在队列的首部(head)进行删除–“出队”,而在队列的尾部(tail)进行插入==“入队”。当队列中没有元素时(即head==tail),称为空队列。
重点:队列遵循先进先出原则!
定义结构体变量
在c++中:
queue q;
在c语言中:
struct queue q; //需要整体使用
代码:
#include<bits/stdc++.h>
using namespace std;
const int N=100;
struct Queue{
int data[N];
int head;
int tail;
};
int main(){
Queue q;
//初始化
q.head=1;
q.tail=1;
int n;
scanf("%d",&n);
//队列的插入
for(int i=0;i<n;i++){
scanf("%d",&q.data[q.tail]);
q.tail++;
}
//队列的删除
while(q.head<q.tail){ //队列不为空则执行循环
printf("%d ",q.data[q.head]);
q.head++;
}
return 0;
}