Review Queue---隊列 java實現

隊列與棧很類似,它是一種特殊的線性表。這種線性表,對於它的刪除與插入操做只能在表頭(隊列頭 front)和表尾(隊尾 rear)進行;隊列的修改是按先進先出原則進行的。簡稱FIFO表。demo以下: spa

class Queue {
    private int maxSize;
    private long[] queArray;
    private int rear; // 隊尾標量
    private int front;


public Queue(int size) {
    maxSize = size;
    queArray = new long[maxSize];
    front = 0;
    rear = 0;
}


public void add(long j) {
    if (rear > maxSize - 1)
    return;
    queArray[rear++] = j;
}

// 隊頭元素出隊
public long remove() {
    long value = queArray[front++];
    return value;
}

// 獲取隊頭元素,不刪除
public long peek() {
    return queArray[front];
}


// 判斷隊列是否爲空
public boolean isEmpty() {
    return rear == front;
}

// 判斷隊列是否已滿
public boolean isFull() {
     return rear == maxSize - 1;
    }
}


public class QueueApp {
    public static void main(String[] args) {
        Queue queArray = new Queue(5);
        queArray.add(10);
        queArray.add(20);
        queArray.add(30);
        queArray.add(40);


while(!queArray.isEmpty()) {
    // FIFO 出隊
    System.out.print(queArray.remove()+"<--");
   }
 }
} 隊列

運行輸出:10<-- 20<-- 30<-- 40<--
相關文章
相關標籤/搜索