//引自<算法>第四版 栈的实现代码
class Queue<Item>{
private Item[] a;
private int N = 0;
public Queue(int n){
a = (Item[]) new Object[n];
}
public boolean isEmpty(){
return N==0;
}
public Item pop(){
Item item = a[--N];
a[N] = null;
//动态改变数组大小
if(N > 0 && N < a.length * 0.25){
resize(a.length/2);
}
return item;
}
public void push(Item item){
if(N == a.length)
{
resize(2*a.length);
}
a[N++] = item;
}
public void resize(int max){
Item[] temp = (Item[]) new Object[max];
for(int i=0; i<N; i++){
temp[i] = a[i];
}
a = temp;
}
public int size(){
return N;
}
}
java实现_用数组实现栈
最新推荐文章于 2021-09-16 17:48:02 发布