專案四 佇列陣列

2021-07-05 20:37:45 字數 1734 閱讀 2036

問題及**:

/*2015,煙台大學計算機與控制工程學院

*完成日期:2023年10月14日

*問題描述:建立10個佇列,分別編號為0-9(處理為佇列陣列,編號即下標)。

輸入若干個正整數,以數字0作為結束。設輸入的值為x,其個位數字的大小為i,則將x插入到編號為i的佇列中。

最後輸出所有的非空佇列。

要求將佇列處理成鏈式佇列,使用鏈式佇列演算法庫中定義的資料型別及演算法,程式中只包括乙個函式(main函式),入隊和出隊等操作直接在main函式中呼叫即可。

*/

(1)標頭檔案:

#ifndef liqueue_h_included

#define liqueue_h_included

typedef int elemtype;

typedef struct qnode

qnode; //鏈隊資料結點型別定義

typedef struct

liqueue; //鏈隊型別定義

void initqueue(liqueue *&q); //初始化鏈隊

void destroyqueue(liqueue *&q); //銷毀鏈隊

bool queueempty(liqueue *q); //判斷鏈隊是否為空

int queuelength(liqueue *q); //返回佇列中資料元素個數

void enqueue(liqueue *&q,elemtype e); //入隊

bool dequeue(liqueue *&q,elemtype &e); //出隊

#endif // liqueue_h_included

(2)源程式:

#include #include #include "liqueue.h"

void initqueue(liqueue *&q) //初始化鏈隊

void destroyqueue(liqueue *&q) //銷毀鏈隊

}free(p);

free(q); //釋放鏈隊節點占用空間

}bool queueempty(liqueue *q) //判斷鏈隊是否為空

int queuelength(liqueue *q) //返回佇列中資料元素個數

return(n);

}void enqueue(liqueue *&q,elemtype e) //入隊

}bool dequeue(liqueue *&q,elemtype &e) //出隊

(3)除錯函式:

#include #include #include "liqueue.h"

#define n 10

int main()

{ int i, a;

liqueue *qu[n]; //定義佇列指標陣列

for (i=0; i

執行結果:

知識點總結:

在這個專案中,需要將十個鏈隊的指標順序儲存到乙個陣列中。

學習心得:

操作的基礎是鏈隊,需要對鏈隊的基本操作掌握熟練。

RabbitMQ(四)佇列結構

一 佇列結構 通常佇列由兩部分組成 1 amqqueue,負責amqp協議相關的訊息處理,即接收生產者發布的訊息 向消費者投遞訊息 處理訊息confirm acknowledge等等 2 backingqueue,它提供了相關的介面供amqqueue呼叫,完成訊息的儲存以及可能的持久化工作等。bac...

第七周 專案四 佇列陣列

檔名稱 test.cpp 完成日期 2015年10月23日 問題描述 排隊看病模擬 include include typedef struct qnode qnode 鏈隊結點型別 typedef struct qutype 鏈隊型別 void seedoctor if find printf 輸...

第七周 專案四 佇列陣列

檔名稱 graph.cpp 作 者 蘇凱祺 完成日期 2014年12月14號 版 本 號 v1.0 問題描述 建立10個佇列,分別編號為0 9 處理為佇列陣列,編號即下標 輸入若干個正整數,以數字0作為結束。設輸入的值為x,其個位數字的大小為i,則將x插入到編號為i的佇列中。最後輸出所有的非空佇列。...