注意點:頭尾指標的做出了調整,初始全部0,而單向隊列為 -1而且陣列中的有一元素被空出來,來表示佇列滿的情況
class
circlequenediy
//判斷佇列是否滿
public
boolean
isfull()
//判斷佇列是否為空
public
boolean
isempty()
//新增資料到佇列
public
void
add(
int num)
//把資料放在rear下標中
arr[rear]
= num;
//改變rear
rear =
(rear +1)
% maxsize;
}//獲取資料,出佇列
public
intget()
//拿出隊首的資料
int value = arr[front]
; front =
(front +1)
% maxsize;
return value;
}//顯示佇列所有的資料
public
void
showquene()
for(
int i = front; i < front +
getsize()
; i++)}
//獲取迴圈佇列的有效資料
public integer getsize()
//顯示佇列的頭元素,注意不是取出資料
public
void
showfirst()
system.out.
println
(arr[front +1]
);}}
資料結構之迴圈佇列
資料結構之佇列 迴圈佇列 ide vs2010 佇列操作 初始化 入隊 插入隊尾 出隊 即取隊頭 判斷佇列是否非空 滿 include using namespace std define max len 100 定義節點型別 typedef struct queue queue 初始化 void ...
資料結構之迴圈佇列
4.10 佇列的定義 佇列定義 一種先進先出的線性表。允許插入的一端稱為隊尾,允許刪除的一端稱為隊頭。隊頭 隊尾 出佇列 a1 a2 a3 a4 an 入佇列 佇列有類似線性表的各種操作,不同的就是插入資料只能在隊尾進行,刪除資料只能在隊頭進行。線性表有線性儲存和鏈式儲存。棧是線性表,有這兩種儲存方...
資料結構之迴圈佇列
怎麼理解上面這段話呢?就是說在現實生活的數個人排隊辦理業務,辦完業務的人自然就走了,後邊的人會往前頂。但是在程式設計中,是死的,他不會自動往前頂。因而迴圈佇列就出現了。其實就是像上段話說的解決 中資料不會自動往前頂,會出現前邊已經空了,但是插不進資料的問題。怎麼解決的呢?資料不會往前頂,但是尾部指標...