陣列模擬環形佇列

2021-10-02 16:30:10 字數 1143 閱讀 1440

package queue;

/* * 陣列模擬環形佇列

*/public

class

queue

public

void

add(

int element)

else

}public

intremove()

throws exception

int temp=arr[front]

; front=

(front+1)

%size;

return temp;

}public

boolean

isempty()

public

boolean

isfull()

/* * 這裡是顯示佇列裡面的元素,

* 佇列裡面的元素個數是(rear-front+size)%size

*/public

void

show()

for(

int i = front; i <

(rear-front+size)

%size+front; i++

) system.out.

println()

;}public

static

void

main

(string[

] args)}/*

* 編寫迴圈佇列的實現方法有多種

* 1: 最常見簡單的就是上面的方法,空出乙個陣列空間進行判斷

* 為空:front==rear

* 為滿:(rear+1)%size==front

* 2: 就是不浪費乙個空間,這裡採取的是增加乙個標記flag,

* 當入佇列時,flag=true,當出佇列時flag=false,

* 為空:front==rear&&flag==false

* 為滿:front==rear&&flag==true

* 3. 也不浪費乙個空間,就是增加乙個表示佇列現在元素個數的count

* 為空:count==size

* 為滿:count==0

*/

陣列模擬環形佇列

class queue 判斷佇列是否滿 public boolean isfull 判斷佇列是否為空 public boolean isempty 新增資料 param n 新增資料的值 public void addqueue int n arr rear n 注意 這裡一定要 去摸 而且 注意 ...

陣列模擬環形佇列

主要思想 採用雙指標,指標front永遠指向佇列第乙個元素,指標rear永遠指向佇列最後乙個元素位置 1,初始值皆為0 front與rear之間約定預留乙個位置,即若初始化陣列容量為10 maxsize 則有效儲存位只有9個。使用公式 rear maxsize front maxsize 可求出佇列...

2 陣列模擬佇列,以及環形佇列

front和rear的初始值都是 1 從隊尾插入乙個資料rear 1 從隊頭取出乙個資料front 1 隊滿 rear maxszie 1 隊空 front rear 使用陣列模擬佇列,編寫乙個arrayqueue類 class arrayqueue 判斷佇列是否滿 public boolean i...