資料結構 佇列(C語言陣列實現)

2021-08-29 10:13:40 字數 854 閱讀 6290

資料結構---佇列(c語言陣列實現)

佇列是先進先出的過程。簡單地畫一幅畫來描述一下佇列:

乙個簡單的、由陣列實現的佇列,可以由以下幾種最基本的操作組成:

1、判斷佇列是否為空

2、判斷佇列是否已經滿了

3、入隊

4、出隊

**如下:

#include #include //佇列大小

#define size 1024

static int queue[size] = ;

static int head, tail;

int is_empty(void)

int is_full(void)

//入隊

int enqueue(int value)

queue[head] = value;

head = (head + 1) % size;

return 0;

}//出隊

int dequeue(int *value)

int main(void)

; printf("入隊前:\n");

for(i = 0; i < 5; i++)

for(i = 0; i < 5; i++)

printf("入隊後:\n");

for(i = 0; i < 5; i++)

printf("出隊後:\n");

while(1)

getchar();

}

c語言資料結構實現 陣列佇列 環形佇列

應用場景是乙個生產者乙個消費者,兩者平均處理速度是相當的,但是有生產峰值速度太快,消費者處理速度跟不上的情況 這種場景若用單執行緒處理,則會出現消費速度慢導致拖慢生產者的速度 若使用雙線程處理,乙個生產線程乙個消費執行緒,這個時候就能用到佇列 環形佇列了。佇列的資料結構其實非常簡單,實現方式主要為動...

資料結構 佇列之C陣列實現

佇列 是一種限定操作的線性表,它只能在表的 一段插入,另外一段取出 所以也稱為 先進先出 資料結構 fifo first in first out c 如下 有小bug不想調了,作為參考即可 include define maxsize 5 typedef int elemtype typedef ...

資料結構 佇列(C語言實現)

佇列 c語言實現 include include define queueisempty arg arg size 0 define queueisfull arg arg size arg capacity 判斷是否為空或為滿。巨集定義,函式調銷太大。佇列使用size和capacity顯式的判斷是...