栈java实现之线性存储源码
class Stack<T>{ private int size=0;//栈大小 private final int default_length=20; private int length;//栈容量 private Object[] o; //初始化 public Stack(){ length = default_length; o = new Object[length]; } public Stack(T data,int init_length){ length = init_length; o = new Object[length]; o[0] = data; size++; } // public int getLength(){ return size; } //入栈 public void push(T data){ if(size+1>length){ while(size+1 > length){ length <<=1; } Object[] temp = new Object[length]; int i = o.length; while(i-->=0){ temp[i]=o[i]; o[i] = null; } o = temp; } o[size++]=data; } //出栈 public T pop(){ @SuppressWarnings