你的位置:首页 > Java教程

[Java教程][javaSE] 数据结构(队列)


队列是一种线性存储结构,他有以下特点:

1.队列中数据是按照“先进先出”方式进出队列的

2.队列只允许在“队首”进行删除操作,在“队尾”进行插入操作

3.队列通常包含两种操作:入队列和出队列

 

使用数组实现队列

定义一个类ArrayQueue

实现入队列方法push()

实现出队列方法pop()

实现返回队首方法front()

实现返回队列长度方法size()

public class ArrayQueue {  private int[] mArray;  private int mCount;  public ArrayQueue(int num) {    mArray=new int[num];    mCount=0;  }  /**   * 入队列   * @param item   */  public void push(int item){    mArray[mCount]=item;    mCount++;  }  /**   * 出队列   * @return   */  public int pop(){    int top=mArray[0];    mCount--;    //往前移动一元素    for(int i=1;i<=mCount;i++){      mArray[i-1]=mArray[i];    }    return top;  }  /**   * 队列长度   * @return   */  public int size(){    return mCount;  }  /**   * 打印数组   */  public void print(){    for(int i=0;i<=mCount-1;i++){      System.out.print(mArray[i]+",");    }  }  /**   * @param args   */  public static void main(String[] args) {    ArrayQueue queue=new ArrayQueue(3);    queue.push(5);    queue.push(6);    queue.push(7);    queue.print();//输出 5,6,7,    queue.pop();    queue.print();//输出 6,7,    queue.push(8);    queue.print();//输出 6,7,8,  }}