第七周專案二

2021-08-09 12:51:43 字數 2045 閱讀 9721

/* 

檔名稱:專案2.cbp 

作    者:陳晨

完成日期:2023年10月19日 

版 本 號:v1.0 

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

輸入描述:無 

程式輸出:測試資料 */

標頭檔案liqueue.h**:

[cpp]view plain

copy

#include 

#include 

typedef

char

elemtype;  

typedef

struct

qnode  

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

typedef

struct

liqueue;          //鏈隊型別定義

void

initqueue(liqueue *&q);  

//初始化鏈隊

void

destroyqueue(liqueue *&q);  

//銷毀鏈隊

bool

queueempty(liqueue *q);  

//判斷鏈隊是否為空

intqueuelength(liqueue *q);  

//返回佇列中資料元素個數

void

enqueue(liqueue *&q,elemtype e);  

//入隊

bool

dequeue(liqueue *&q,elemtype &e);   

//出隊

原始檔liqueue.cpp**:

[cpp]view plain

copy

#include "liqueue.h"

void

initqueue(liqueue *&q)  

//初始化鏈隊

void

destroyqueue(liqueue *&q)  

//銷毀鏈隊

}  free(p);  

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

}  bool

queueempty(liqueue *q)  

//判斷鏈隊是否為空

intqueuelength(liqueue *q)  

//返回佇列中資料元素個數

return

(n);  

}  void

enqueue(liqueue *&q,elemtype e)  

//入隊

}  bool

dequeue(liqueue *&q,elemtype &e)   

//出隊  

原始檔main.cpp**:

[cpp]view plain

copy

#include 

#include "liqueue.h"

intmain()  

printf("\n"

);  

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

);  

destroyqueue(q);  

return

0;  

}  

執行結果:

知識點總結:

將鏈形佇列的基本演算法整合在一起而形成演算法庫。

學習心得:

鏈隊中不需要判斷隊滿,隊空條件是front和rear都為null;同時鏈隊進隊和出隊都與環形佇列不一樣。

第七周專案二

檔名稱 liqueue 作 者 zhangsiqi完成日期 2017年10月17日 版 本 號 13.12 問題描述 定義鏈隊儲存結構,實現其基本運算,並完成測試。輸入描述 無 輸出描述 無 cpp view plain copy print?ifndef liqueue h included de...

第七周專案三

檔名稱 專案3.cbp 作 者 孫立立 完成日期 2015年11月30日 版 本 號 v1.0 問題描述 設從鍵盤輸入一整數序列a1,a2,an,試程式設計實現 當ai 0時,ai進隊,當ai 0時,將隊首元素出隊,當ai 0時,表示輸 入結束。要求將佇列處理成環形佇列,使用演算法庫中定義的資料型別...

第七周專案1

檔名稱 作 者 胡昌星 完成日期 2016年4月10號 版 本 號 v1.0 問題描述 點類中的距離 輸入描述 無 程式輸出 1.41421 例 使用成員函式 友元函式和一般函式的區別 include using namespace std class time void display1 disp...