public class MyArrayQueue<T> {
private T[] items;
private int head = 0;
private int tail = 0;
private int cap;
private int size = 0;
public MyArrayQueue(int cap){
this.items = (T[])new Object[cap];
this.cap = cap;
}
public void add(T t){
if((tail+1)%cap==head){
return;
}
items[tail] = t;
tail = (tail + 1) % cap;
size++;
}
public T remove(){
head = (head+1)%cap;
size--;
return items[head];
}
public T element(){
return items[head];
}
public void offer(T t){
}
public T poll(T t){
return items[head];
}
public T peek(T t){
return items[head];
}
}
数据结构与算法-练习题-队列
最新推荐文章于 2022-10-25 21:30:10 发布