1、代码如下
public class SequenceQueue{ final int MaxSize=10; private T queueArray[]; private int front,rear; //构造一个空的队列 public SequenceQueue() { front = rear = 0; queueArray = (T[]) new Object[MaxSize]; } //在队列的队尾插入一个新元素 public void EnQueue(T obj){ if((rear+1)%queueArray.length==front){ T[] p=(T[])new Object[queueArray.length*2]; if(rear==((T[])queueArray).length-1) { for(int i=1;i<=rear;i++) p[i]=queueArray[i]; } else{ int i,j=1; for(i=front+1;i 二、测试代码如下:
public class testSequenceQueue { public static void main(String[] args) { SequenceQueueQ = new SequenceQueue<>(); int[] a = {1,4,6,23,45,78,25}; for(int i = 0;i < a.length;i++){ Q.EnQueue(a[i]); } System.out.println("原始队列数据为:"); Q.nextOrder(); Q.DeQueue(); System.out.println("执行删除操作后情况为:"); Q.nextOrder(); System.out.println("队列长度为:" + Q.size()); } }



