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<--
相关文章
相关标签/搜索