第七周專案2 建立鏈隊演算法庫

2021-07-05 23:37:36 字數 1851 閱讀 7788

問題及**:

/* 

*檔名稱:建立鏈隊演算法庫.cpp

*作 者:杜文文

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

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

在sqqueue.cpp中實現這些函式

在main函式中完成測試,包括如下內容:

(1)初始化佇列q

(2)依次進佇列元素a,b,c

(3)判斷佇列是否為空

(4)出隊乙個元素

(5)輸出佇列中元素個數

(6)依次進佇列元素d,e,f

(7)輸出佇列中元素個數

(8)將佇列中所有元素刪除,並輸出序列

(9)釋放佇列

*/

liqueue.h:

#ifndef liqueue_h_included

#define liqueue_h_included

typedef char 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

liqueue.cpp:

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

main.cpp:

#include #include "liqueue.h"

int main()

printf("\n");

printf("(9)釋放鏈隊\n");

destroyqueue(q);

return 0;

}

執行結果:

知識點總結:

每個週都有建立演算法庫這一題目,我覺得不論是鍊錶,鏈棧還是如今的環形佇列和鏈隊,都有相似之處。

學習心得:

只是想抓緊把之前落的抓緊補回來

第七周 專案2建立鏈隊演算法庫

all right reserved.檔名稱 lid.cpp 作 者 商文軻 完成日期 2015年10月日 版 本 號 v1.9 問題描述 建立鏈隊演算法庫 liqueue.h ifndef liqueue h included define liqueue h included include i...

第七周專案2 建立鏈隊演算法庫

問題及描述 檔名稱 sqqueue.cpp,main.cpp,sqqueue.h 完成日期 2015年10月12日 版本號 vc6.0 問題描述 定義鏈隊儲存結構,實現其基本運算,並完成測試。liqueue.h ifndef liqueue h included define liqueue h i...

第七周 專案2 建立鏈隊演算法庫

問題及 檔名稱 test.cpp 作 者 劉磊 完成日期 2015.10.12 版 本 號 v1.0 問題描述 輸入描述 程式輸出 include include liqueue.h int main printf n printf 9 釋放鏈隊 n destroyqueue q return 0 ...