数据结构--队列

157 阅读1分钟

队列与栈的区别是栈是先进后出,队列是先进先出,我们还是使用之前自定义的数组来实现 juejin.cn/post/684490… 但是使用这种方法会有一个缺点,就是当我们取出第一个元素之后,那么后面的元素就要往前移动一个位置,所以我们需要一种循环队列

public class ArrayQueue {

private Array[E] array;

public ArrayQueue(int capacity) {
    array = new Array<>(capacity);
}

public ArrayQueue() {
    this(10);
}

//查看队列中的元素数量
public int getSize() {
    return array.getSize();
}

//判断队列是否为空
public boolean isEmpty() {
    return array.isEmpty();
}

//添加元素,我们往队尾添加元素,队首取元素
public void push(E e) {
    array.addLast(e);
}

//查看队首元素
public E peek() {
    return array.getFirst()
}

//取出第一个元素
public E pop() {
    array.removeFirst();
}

}