佇列順序儲存 設計與實現 API函式

2022-08-19 08:27:12 字數 2065 閱讀 7823

queue經常使用操作

銷毀佇列

清空佇列

進佇列出佇列

獲取隊頭元素

獲取佇列的長度

佇列也是一種特殊的線性表;能夠用線性表順序儲存來模擬佇列。

主要**:

// seqqueue.h

// 順序儲存佇列api宣告

#ifndef _my_seqqueue_h_

#define _my_seqqueue_h_

typedef void seqqueue;

// 建立佇列

seqqueue* seqqueue_create(int capacity);

// 銷毀佇列

void seqqueue_destroy(seqqueue* queue);

// 清空佇列

void seqqueue_clear(seqqueue* queue);

// 入佇列

// 出佇列

void* seqqueue_retrieve(seqqueue* queue);

// 獲取對頭元素

void* seqqueue_header(seqqueue* queue);

// 獲取佇列長度

int seqqueue_length(seqqueue* queue);

// 獲取佇列容量

int seqqueue_capacity(seqqueue* queue);

#endif //_my_seqqueue_h_

// seqqueue.cpp

// 順序儲存佇列api實現

// 呼叫了順序儲存表的api

#include #include "seqqueue.h"

#include "seqlist.h"

// 建立佇列相當於建立乙個鍊錶

seqqueue* seqqueue_create(int capacity)

// 銷毀佇列相當於銷毀鍊錶

void seqqueue_destroy(seqqueue* queue)

// 清空佇列相當於清空鍊錶

void seqqueue_clear(seqqueue* queue)

// 入佇列相當於在鍊錶尾部插入元素

// 出佇列相當於刪除鍊錶0號位置的元素

void* seqqueue_retrieve(seqqueue* queue)

// 獲取對頭元素相當於獲取鍊錶0號位置元素

void* seqqueue_header(seqqueue* queue)

// 獲取佇列長度相當於獲取鍊錶長度

int seqqueue_length(seqqueue* queue)

// 獲取佇列容量相當於獲取鍊錶容量

int seqqueue_capacity(seqqueue* queue)

// main.cpp

// 順序儲存佇列api的測試程式

#include #include "seqqueue.h"

const int maxn = 10;

void play()

sq = seqqueue_create(20); // 建立佇列

// 入佇列

for (i = 0; i < maxn; ++i)

// 獲取佇列屬性

printf("header: %d\n", *((int *)seqqueue_header(sq)));

printf("length: %d\n", seqqueue_length(sq));

printf("capacity: %d\n", seqqueue_capacity(sq));

// 出佇列

while (seqqueue_length(sq))

seqqueue_destroy(sq);

}int main()

具體project**:github

佇列鏈式儲存 設計與實現 API函式

佇列相關基礎內容參我的博文 佇列順序儲存 設計與實現 api函式 佇列也是一種特殊的線性表 可以用線性表鏈式儲存來模擬佇列的鏈式儲存。主要 linkqueue.h 佇列鏈式儲存api宣告 ifndef linkqueue h define linkqueue h typedef void linkq...

佇列 順序儲存 簡單實現

佇列最簡單的表示方法是用陣列.為了實現正確判斷佇列空和佇列滿兩種情況,我們需要2個指標,front 指向第乙個元素的前乙個元素 rear 指向最後乙個元素 在初始情況下,front和rear都等於 1,每入隊乙個元素rear都加1,當rear maxsize 1時,即佇列已滿.每出隊乙個元素,fro...

佇列 順序儲存 簡單實現

佇列最簡單的表示方法是用陣列.為了實現正確判斷佇列空和佇列滿兩種情況,我們需要2個指標,front 指向第乙個元素的前乙個元素 rear 指向最後乙個元素 在初始情況下,front和rear都等於 1,每入隊乙個元素rear都加1,當rear maxsize 1時,即佇列已滿.每出隊乙個元素,fro...