/*
檔名稱:專案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...