資料結構之自建演算法庫 順序環形佇列

2021-07-05 07:26:28 字數 1398 閱讀 8013

本文針對資料結構基礎系列網路課程(3):棧和佇列中第9課時環形佇列的儲存及基本操作。

下圖是資料儲存結構設計及各種操作實現的要點:

順序環形佇列演算法庫採用程式的多檔案組織形式,包括兩個檔案:

1.標頭檔案:sqqueue.h,包含定義順序環形佇列資料結構的**、巨集定義、要實現演算法的函式的宣告;

#ifndef sqqueue_h_included

#define sqqueue_h_included

#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

2.原始檔:sqqueue.cpp,包含實現各種演算法的函式的定義

#include 

#include

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

#include 

#include "sqqueue.h"

int main()

printf("\n");

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

destroyqueue(q);

return

0;}

資料結構之自建演算法庫 順序環形佇列

本文針對資料結構基礎系列網路課程 3 棧和佇列中第9課時環形佇列的儲存及基本操作。下圖是資料儲存結構設計及各種操作實現的要點 順序環形佇列演算法庫採用程式的多檔案組織形式,包括兩個檔案 1.標頭檔案 sqqueue.h,包含定義順序環形佇列資料結構的 巨集定義 要實現演算法的函式的宣告 ifndef...

資料結構之自建演算法庫 順序棧

本文針對資料結構基礎系列網路課程 3 棧和佇列中第3課時棧的順序儲存結構及其基本運算實現。順序棧演算法庫採用程式的多檔案組織形式,包括兩個檔案 1.標頭檔案 sqstack.h,包含定義順序棧資料結構的 巨集定義 要實現演算法的函式的宣告 ifndef sqstack h included defi...

資料結構之自建演算法庫 順序串

本文針對資料結構基礎系列網路課程 4 串中第4課時串的順序儲存及其基本操作實現。順序串演算法庫採用程式的多檔案組織形式,包括兩個檔案 1.標頭檔案 sqstring.h,包含定義順序串資料結構的 巨集定義 要實現演算法的函式的宣告 ifndef sqstring h included define ...