JAVA 用数组实现环型队列

7 篇文章 0 订阅
 
/*
 * Author: zhangjian268
 * Created: 20074る11ら と 04:59:23
 * Modified: 20074る11ら と 04:59:23
 * 數組實現環形隊列  
 
*/


import  java.util. * ;

public   class  ArrayCircularQueue  {
    
private int front = 0, rear = 0;
    
private Object[] queue;
    
    
public ArrayCircularQueue(int maxElements) {
        queue 
= new Object[maxElements];
    }

    
    
public void insert(Object o) {
        
int temp = rear;
        rear 
= (rear + 1% queue.length;
        
if (front == rear) {
            rear 
= temp;
            
//throw new FullQueueException();
        }

        
        queue[rear] 
= o;
    }

    
    
public boolean isEmpty() {
        
return front == rear;
    }

    
    
public boolean isFull() {
        
return ((rear + 1% queue.length) == front;
    }

    
    
public Object remove() {
        
if (front == rear)
            
return 0;
            
//throw new EmptyQueueException(); 
        
        front 
= (front + 1% queue.length;
        
return queue[front];
    }

    
    
public static void main(String args[]) {
        ArrayCircularQueue Q 
= new ArrayCircularQueue(16);
        Q.insert(
"aa");
        Q.insert(
"bb");
        Q.insert(
"cc");
        System.out.println(Q.remove());
        Q.insert(
"dd");
        System.out.println(Q.remove());
        System.out.println(Q.remove());
        System.out.println(Q.remove());
        System.out.println(Q.remove());
    }

}
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值