第六周 專案4 佇列陣列

2021-07-23 16:10:22 字數 1763 閱讀 1506

問題及**:

/*    

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

*作 者: 車佳穎

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

*問題描述:建立10個佇列,分別編號為0-9(處理為佇列陣列,編號即下標)。輸入若干個正整數,以數字0作為結束。設輸入的值為x,其個位數字的大小為i,則將x插入到編號為i的佇列中。最後輸出所有的非空佇列。

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

*/

sqqueue.h:

#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

sqqueue.cpp:

#include"sqqueue.h"  

#include#includevoid 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) //出隊

main.cpp:

#include #include#include"sqqueue.h"  

#define n 10

int main()

{ int i,a;

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

for(i=0;i

執行結果:

知識點總結:

運用佇列的基本運算。

學習心得:

感覺佇列陣列較難,還得多下功夫。

第六周 佇列陣列

煙台大學計控學院 作 者 孫子策 完成日期 2016.10.6 問題描述 建立10個佇列,分別編號為0 9 處理為佇列陣列,編號即下標 輸入若干個正整數,以數字0作為結束。設輸入的值為x,其個位數字的大小為i,則將x插入到編號為i的佇列中。最後輸出所有的非空佇列。要求將佇列處理成鏈式佇列,使用鏈式佇...

第六周專案4

ifndef sqstack h included define sqstack h included define maxsize 100 typedef int elemtype typedef struct sqstack 順序棧型別定義 void initstack sqstack s 初始...

第7周 專案4 佇列陣列

問題描述及 煙台大學計控學院 作 者 楊徵 完成日期 2015年10月14日 問題描述 建立10個佇列,分別編號為0 9 處理為佇列陣列,編號即下標 輸入若干個正整數,以數字0作為結束。設輸入的值為x,其個位數字的大小為i,則將x插入到編號為i的佇列中。最後輸出所有的非空佇列。要求將佇列處理成鏈式佇...