队列实现(C语言)
队列是数据结构中比较常见的,跟时间有关的一般和队列有关系。 队列的实现有很多如数队(数组实现)、链队(链表实现的)。数队又分不同的实现,每种实现都有自己的缺点。这里是最普通的一种,了解队列的结构。下面是数队的一种实现,先看实现: #include<stdio.h> #include<malloc.h> //结构 typedef struct QU{ int *base;//1 int rear;//2 int size;//3 } QU, *QUECE; QUECE init(){ QUECE queue; queue->base = (int *)malloc(10*sizeof(int)); queue->rear = 0; queue->size = 10; return queue; } void en(QUECE queue, int e){ if(queue->rear-1 == queue->size)//4 exit(-1); queue->base[queue->rear] = e;//5 queue->rear = queue->rear+1;//6 } int de(QUECE queue){ int e; int i; e = queue->base[0];//7 if(queue->rear == 0)//8 exit(-1); for(i=1;i