實驗四 順序佇列(迴圈佇列)和鏈佇列

2021-08-09 09:56:06 字數 1438 閱讀 4310

1.迴圈佇列

#ifndef cirqueue_h  

#define cirqueue_h

const int queuesize=100; //定義儲存佇列元素的陣列的最大長度

template

//定義模板類cirqueue

class cirqueue

;

#endif

#include "cirqueue.h"

template

cirqueue

::cirqueue( )

template

cirqueue

::~cirqueue( ) template

void cirqueue

::enqueue(datatype x) template

datatype cirqueue

::dequeue( ) template

datatype cirqueue

::getqueue( ) template

int cirqueue

::empty( ) #include

using namespace std; #include "cirqueue.cpp" void main() ;

template

class linkqueue

;#endif;

#include "linkqueue.h"

template

linkqueue

::linkqueue() template

linkqueue

::~linkqueue() } template

void linkqueue

::enqueue(datatype x) template

datatype linkqueue

::dequeue() template

datatype linkqueue

::getqueue() template

int linkqueue

::empty() #include

using namespace std; #include "linkqueue.cpp" void main() { linkqueue

q; //建立模板類的例項 if(q.empty()) cout<

我發現順序棧。鏈棧、順序佇列和鏈佇列之間有許多相似的地方,所以按照書上的部分演算法提示,和實驗書的源程式,便可以可以寫出迴圈佇列的程式,通過實驗,可以更對迴圈佇列和鏈佇列之間的區別更加清晰。

資料結構 佇列 順序佇列 迴圈佇列 鏈佇列)

前言 一 佇列的定義 二 佇列的順序儲存結構 1.順序佇列的定義 2.迴圈佇列定義 3.迴圈佇列的基本操作 三 佇列的鏈式儲存結構 1.鏈佇列的定義 2.鏈佇列的基本操作 佇列也是一種線性表,其特殊性在於佇列的基本操作是線性表的子集。佇列按 先進先出 的規則進行操作,故稱其為操作受限的線性表。佇列 ...

佇列(迴圈佇列 鏈佇列)

迴圈佇列 cirqueue.h 名稱 迴圈佇列 基於陣列 templateclass cirqueue q size 1 多申請乙個位置,保證隊滿 對空容易判定!cirqueue void enter datatype data 入隊操作 datatype shift 出隊操作 datatype g...

佇列(單鏈佇列和迴圈佇列)

和線性表類似,佇列也有兩種儲存表示 鏈佇列 為操作方便,給鏈佇列新增乙個頭結點 佇列的鏈式儲存結構 typedef struct qnodeqnode,queueptr typedef struct linkqueue 1 include2 include3 include4 typedef str...