C 迴圈順序佇列

2021-07-04 21:20:23 字數 2270 閱讀 3885

顧名思義:採用順序結構存放的佇列稱為順序佇列

迴圈順序佇列可以避免佇列的假溢位現象的發生。如下圖示,迴圈佇列的幾種特殊情況。

學習完順序迴圈佇列個人感覺應該注意的事項:

front、rear只是表示在base[i]這個順序表中的索引值,而不是記憶體的絕對位址,這樣也才在後面的迴圈的時候處理起來比較方便

佇列迴圈的關鍵

下面是個人的迴圈佇列操作工程檔案:

///

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

#ifndef myhead_h

#define myhead_h

#include"myhead.h"

#endif

#include

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//迴圈順序佇列資料結構c++類宣告(基類)

template class sqqueue

;///

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

//////

////////

//迴圈順序佇列資料結構c++類實現(基類)

template void sqqueue::clear()

template status sqqueue::dequeue(elemtype & e)

template status sqqueue::enqueue(elemtype &e)

template status sqqueue::getfront(elemtype & e)

template int sqqueue::getlength()

template bool sqqueue::isempty()

template bool sqqueue::isfull()

///////系統建構函式及析構函式的實現

template sqqueue::sqqueue(int size)

templatesqqueue::~sqqueue()

templatesqqueue::sqqueue(const sqqueue& otherq)

}templatevoid sqqueue::display()

cout<6)<

for (int i = 0; i < n-1; i++)

cout<6)<

<6)<

for (int i = 0; i < n-1; i++)

cout<6)<

display();

}

// sqqueuetest.cpp : 定義控制台應用程式的入口點。

//#include "stdafx.h"

#include"sqqueue.h"

#include

using

namespace

std;

int _tmain(int argc, _tchar* argv)

sq.display();

cout

<

>yesorno;

}system("pause");

return

0;}

迴圈佇列 順序佇列(C )

佇列 queue 是一種限定訪問位置的線性變。他允許在表的一端插入,在另一端刪除。這個和計算機排程策略中的先來先服務fcfs first come first served 是一樣的。佇列中可以插入的一端為隊尾 rear 允許刪除的一端稱為隊頭 front 佇列也分為兩種,一種是用陣列的儲存表示,一...

迴圈佇列 順序佇列

在前兩篇中講述了順序佇列中的隊頭移動與不移動兩種順序佇列,今天討論順序佇列中的迴圈佇列,這種迴圈佇列是用一維陣列實現的。在隊頭移動的情況下,根據元素個數與佇列容量之間的數量關係來解決假溢位問題。從上圖中我們可以理解為什麼這種佇列結構可以解決假溢位問題,但是隨之而來,我們要如何判定迴圈佇列已滿呢?在此...

佇列 順序迴圈佇列

順序佇列 sequence queue 用一片連續的儲存空間來儲存佇列中的資料元素.用一維陣列來存放順序佇列中的資料元素。隊頭位置設在陣列下標為 0 的端,用 front 表示 隊尾位置設在陣列的另一端,用 rear 表示。front 和 rear 隨著插入和刪除而變化。當隊列為空時,front r...