第七周 專案一 建立順序環形佇列演算法庫

2021-07-23 11:36:19 字數 1589 閱讀 5700

問題及描述:

/* 

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

完成日期:2023年10月8號

問題描述:定義順序環形佇列儲存結構,實現其基本運算,並完成測試。

*/

sqqueue.h標頭檔案**

#ifndef sqqueue_h_included  

#define sqqueue_h_included

#include #include #define maxsize 5

typedef char elemtype;

typedef struct

sqqueue;

void initqueue(sqqueue *&q); //初始化順序環形佇列

void destroyqueue(sqqueue *&q); //銷毀順序環形佇列

bool queueempty(sqqueue *q); //判斷順序環形佇列是否為空

int queuelength(sqqueue *q); //返回佇列中元素個數,也稱佇列長度

bool enqueue(sqqueue *&q,elemtype e); //進隊

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

#endif // sqqueue_h_included

sqqueue.cpp檔案**

//順序佇列基本運算函式  

#include "sqqueue.h"

void initqueue(sqqueue *&q) //初始化順序環形佇列

void destroyqueue(sqqueue *&q) //銷毀順序環形佇列

bool queueempty(sqqueue *q) //判斷順序環形佇列是否為空

int queuelength(sqqueue *q) //返回佇列中元素個數,也稱佇列長度

bool enqueue(sqqueue *&q,elemtype e) //進隊

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

main.cpp檔案**

#include "sqqueue.h"  

int main()

printf("\n");

printf("(9)釋放佇列\n");

destroyqueue(q);

return 0;

}

執行結果:

知識點總結:

定義順序環形佇列演算法庫要理解隊首和隊尾指標的用法以及環形結構這一特殊形式的實現。

學習心得:

判斷順序環形佇列是否為空只需要看隊首和隊尾是否相等就可以了。

進隊隊尾指向下乙個,出隊隊首指向下乙個,體現了佇列「先進先出"這一結構。

第七周專案一 順序環形佇列

煙台大學計算機學院 問題描述 順序環形佇列 輸入描述 無 輸出描述 佇列元素,出列入列元素 sqqueue.h include define maxsize 100 typedef intelemtype typedef struct sqqueue void initqueue sqqueue q...

第七周 專案一 建立順序環形佇列演算法庫

檔名稱 graph.cpp 作 者 蘇凱祺 完成日期 2014年12月14號 版 本 號 v1.0 問題描述 建立順序環形佇列演算法庫 sqqueue.h ifndef sqqueue h included define sqqueue h included define maxsize 5 typ...

第七周 專案一 建立順序環形佇列演算法庫

問題及 main.cpp 檔名稱 建立順序環形佇列演算法庫.cpp 作 者 周國亮 完成日期 2016年10月8日 版 本 號 v1.0 問題描述 輸入描述 無 程式輸出 若干輸出。include include sqqueue.h int main printf n printf 9 釋放佇列 n...