首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

java实现行列(数组方式)

2013-10-10 
java实现队列(数组方式)QueueArray类import java.util.Arrayspublic class QueueArrayT {T[] arspriva

java实现队列(数组方式)

QueueArray类

import java.util.Arrays;public class QueueArray<T> {T[] ars;private int default_capacity=10;//元素个数private int size=0;//队头private int font=-1;//队尾private int rear=-1;@SuppressWarnings("unchecked")public QueueArray(){ars=(T[])new Object[default_capacity];}@SuppressWarnings("unchecked")public QueueArray(int capacity){ars=(T[])new Object[capacity];} public  void push(T data) { if (size==ars.length) { //扩容20% @SuppressWarnings("unchecked")T[] newars=(T[])new Object[(int)(ars.length*1.2)]; System.arraycopy(ars, 0, newars, 0, ars.length); Arrays.fill(ars, null); ars=newars; push(data); } else {     if (font==-1)  font++; rear=(rear+1)%ars.length; ars[rear]=data; size++;   }   } public T Pop() {   if(font==-1)   {   return null;   }  else   { T fontdata=ars[font]; ars[font]=null; font=(font+1)%ars.length; size--; return fontdata;  }   } public int getSize() { return this.size; } public T getFontData() { return ars[font]; } public int getFontIndex() { return this.font; } public T getRearData() { return ars[rear]; } public int getRearIndex() { return this.rear; }}


 

热点排行