/*
迴圈佇列
vs2010 除錯
*/#include #include #include #define max_size 6
#define true 1
#define false 0
#define overflow 0
#define ok 1
#define error 0
typedef struct seq_queue
sq;/*
函式功能: 初始化迴圈佇列
*/int init_seq_queue(sq *q)
q->front = 0;
q->rear = 0;
return ok;}/*
函式功能: 佇列元素是否為空
返 回 值: 1 為空; 0 非空
*/int is_queue_empty(sq q)
/*函式功能: 佇列是否已滿
返 回 值: 1 已滿; 0 未滿
*/int is_queue_full(sq q)
/*函式功能: 元素num入隊
*/int enqueue(sq *q, int num)
q->rear = (q->rear + 1) % max_size;
q->data[q->rear] = num;
return ok;}/*
函式功能: 元素出隊,出隊元素存入num
*/int dequeue(sq *q, int *num)
q->front = (q->front + 1) % max_size;
*num = q->data[q->front];
return ok;}/*
函式功能: 獲取隊頭元素,元素存入num
*/int get_elem(sq q, int *num)
*num = q.data[q.front + 1];
return ok;}/*
函式功能: 獲得佇列長度
返 回 值: 佇列長度
*/int get_queue_length(sq q)
/*函式功能: 列印佇列元素
*/void print_queue(sq q)
printf("front<-");
while(i != ((q.rear + 1) % max_size))
printf("rear\n");}/*
函式功能: 銷毀佇列
*/void destory_queue(sq *q)
int main(int argc, char *argv)
迴圈佇列實現(C語言)
背景 生活中有很多佇列的影子,比如打飯排隊,買火車票排隊問題等,可以說與時間相關的問題,一般都會涉及到佇列問題 從生活中,可以抽象出佇列的概念,佇列就是乙個能夠實現 先進先出 的儲存結構。佇列分為鏈式佇列和靜態佇列 靜態佇列一般用陣列來實現,但此時的佇列必須是迴圈佇列,否則會造成巨大的記憶體浪費 鏈...
C語言迴圈佇列的實現
迴圈佇列的操作包括初始化 求佇列的長度 入隊 出隊 取隊頭元素。下面是實現 在初始化之前,先進行預定義 define ok 1 define error 0 define overflow 2 define maxsize 100 typedef int status typedef int ele...
mysql迴圈佇列 C語言實現 迴圈佇列
include include include typedef struct queue int pbase 陣列 int front 頭 int rear 尾 rear不存放資料,所以rear前面的是最後乙個資料 queue void init queue queue pq bool full q...