队列与栈的区别是栈是先进后出,队列是先进先出,我们还是使用之前自定义的数组来实现 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();
}
}