環形佇列的輸出 迴圈佇列的基本操作詳細講解

2021-10-12 15:49:35 字數 744 閱讀 7245

實驗學時:

實驗型別:

(設計型)

一、實驗目的

1.理解並掌握佇列的邏輯結構和順序儲存結構,了解迴圈佇列的特點;

2.掌握迴圈佇列中基本操作的相關演算法;

3.程式設計實現相關演算法;

4.學會利用迴圈佇列解決實際問題。

二、實驗條件

visual c++

三、實驗原理及相關知識

1.迴圈佇列儲存結構描述

#define maxsize 100

最大佇列長度

typedef struct

qelemtype *base;

儲存空間基址

int front;

頭指標int rear;

尾指標}sqqueue;

2.基本操作的演算法描述

設下標為

index

,佇列長度為

mindex_next = ( index+1 ) % m

實驗中涉及的三個關鍵操作時迴圈佇列中求佇列長度、入隊和出隊操作。

(1)求長度

所謂求佇列長度,即技術佇列中元素的個數。演算法

思想根據

迴圈佇列

的結構特

徵可以用

公式q.rear-q.front+

maxsize

%maxsize

直接計算出佇列的長度。

演算法描述

status queuelength(sqqueue q)

佇列和環形佇列的實現

1 基本介紹 2 陣列模擬佇列 public class arrayqueuedemo catch exception e break case h trycatch exception e break case e scanner.close flag false break default br...

迴圈佇列的基本實現

2.完成對迴圈佇列結構的定義,以及對迴圈佇列的各種基本運算的實現 每種基本運算用乙個函式來實現 基本運算包括 初始化init sqqueue運算 判隊空empty sqqueue運算 入隊en sqqueue運算 出隊de sqqueue運算 取隊頭元素gethead sqqueue運算。inclu...

迴圈佇列的基本操作

一 迴圈佇列的基本概念。佇列是線性表的一種,相對於棧的先進後出 filo 佇列是先進先出的 fifo 因此只能在一端輸入 隊尾rear 在另一端輸出 隊頭front 順序佇列的隊頭指向當前佇列第乙個元素的位置,隊尾指向當前元素的下乙個位置的下乙個位置,但是當隊滿時不能入棧,存在問題 設陣列長度為m,...