/* 2019.10.10
学习啊哈算法的队列*/
#include<stdio.h>
#include<stdlib.h>
int main()
{
int q[102]={0,6,3,1,7,5,8,9,2,4},head,tail;
int i;
head =1;
tail =10;
while(head <tail){
printf("%d",q[head]);
head++;
q[tail]=q[head];
tail++;
head++;
}
system("pause");
return 0;
}
队列是一种特
殊的线性结构,它只允许在队列的首部(head)进行删除操作,这称为“出队”,而在队列
的尾部(tail)进行插入操作,这称为“入队”。当队列中没有元素时(即 head==tail),称为
空队列。
/*使用结构体来实现的队列操作
*/
#include<stdio.h>
#include<stdlib.h>
struct queue
{
int data[100];
int head;
int tail;
};
int main()
{
struct queue q;
int i;
q.head = 1;
q.tail = 1;
for(i=1;i<=9;i++){
scanf("%d",&q.data[q.tail]);
q.tail++;
}
while(q.head <q.tail){
printf("%d",q.data[q.head]);
q.head++;
q.data[q.tail]=q.data[q.head];
q.tail++;
q.head++;
}
system("pause");
return 0;
}