資料結構實踐 建立順序環形佇列演算法庫

2021-07-05 19:00:35 字數 1312 閱讀 8945

/* 

* 檔名稱: sqqueue.h,sqqueue.cpp,main.cpp

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

* 版本號:vc++6.0

* * 問題描述:定義順序環形佇列儲存結構,實現其基本運算,並完成測試。#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

#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");

資料結構 環形佇列 迴圈佇列 順序儲存

佇列是對頭出 隊尾入的先進先出線性表。需要兩個指標front和rear分別來指向隊頭和隊尾。front指向隊頭元素的前乙個位置,rear總是指向隊尾元素。進隊 rear 1 出隊 front 1 隊空條件 front rear 隊滿條件 rear maxsize 1 但是這樣會出現假溢位的情況,因為...

資料結構 順序表實現環形佇列

1 佇列的定義 佇列是一種特殊的線性表,線性表兩端都可以進行插入刪除,而佇列只能在隊頭刪除,隊尾插入。插入元素稱為入隊,刪除元素稱為出隊。2 佇列的特點 1 只允許在一端進行插入資料操作,在另一端進行刪除資料操作的特殊線性表 2 進行插入操作的一端稱為隊尾 入佇列 3 進行刪除操作的一端稱為隊頭 出...

java資料結構 環形佇列

arrayqueue存在乙個問題,假設當尾部插入元素滿了,頭部又刪掉了一些元素,這種情況下,就誤認為空間滿了,造成了假溢位,實際上頭部刪除了元素留出了空間。這時候環形佇列就解決了這樣的乙個問題,環形佇列的front指標始終指向當前佇列的最後位置 end指標始終指向第乙個元素的前乙個位置為 1,儲存元...