package test;
/*
* 队列
* */
class Queue
{
private int maxSize;
private int[] array;
private int front;
private int rear;//队尾
private int nElems;//队头
public Queue(int max)
{
maxSize=max;
array=new int[maxSize];
nElems=0;
front=0;//删除标记
rear=-1;//插入标记
}
public void insert(int key)
{
//验证队尾是否到底了
if(rear==maxSize-1)
rear=-1;
array[++rear]=key;
nElems++;
}
public int delete()
{
int temp=array[front++];
if(front==maxSize)
front=0;
nElems--;
return temp;
}
public int peekFront()
{
return array[front];
}
public boolean isEmpty()
{
return (nElems==0);
}
public int getsize()
{
return nElems;
}
public boolean isFull()
{
return nElems==maxSize;
}
public void display()
{
for(int i=0;i<nElems;i++)
System.out.print(array[i]+" ");
}
}
public class queue_test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Queue que=new Queue(20);
for(int i=0;i<10;i++)
{
int n=(int)(java.lang.Math.random()*99);
que.insert(n);
}
que.display();
System.out.println();
que.delete();
que.display();
}
}