欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

数组实现队列

程序员文章站 2024-03-18 10:59:58
...
队列是一种线性表,在java中可以用两个数组的交换来实现,以下是我写的用数组来实现队列的代码:


public class Queue {
/**
* 定义一个长度为0的Object类型的数组
*/
private Object [] StrcA = new Object[0];

/**
* 定义一个向队列中添加元素的方法
* @param ob
*/
public void add(Object ob){
Object [] StrcB = new Object[StrcA.length+1];
for(int i=0;i<StrcA.length;i++){
StrcB[i]=StrcA[i];
}
StrcB[StrcA.length]=ob;
StrcA=StrcB;//将两个数组进行交换
}

/**
* 定义在队列中取出一个元素的方法
* @param num
* @return
*/
public int get(int num){
System.out.println(StrcA[num]);
return num;
}

/**
* 定义在队列中删除一个元素的方法
* @param num
*/
public void delete(int num){
Object [] StrcB = new Object [StrcA.length];
for(int i=0;i<num-1;i++){
StrcB[i]=StrcA[i];
System.out.println(StrcB[i]);
}

for(int j=num;j<StrcA.length;j++){
StrcB[j]=StrcA[j];
System.out.println(StrcB[j]);
}
StrcA=StrcB;
System.out.println("删除掉的元素是第"+num+"号元素");
}

/**
* 定义队列的遍历函数
*/
public void printf(){
for(int i=0;i<StrcA.length;i++){
System.out.println("第"+(i+1)+"号元素是"+StrcA[i]);
}
}

}