自己实现队列



public class 自己实现队列
  
  
   
    {

	private static Object[] array = new Object[10];
	private static  int length = 0;
	public  void  push(T data){//入队
		if(length >= array.length  - 1){//当自己定义的数组长度不够时,需要扩容
			Object[] o = new Object[(int)(array.length * 1.5)] ;//扩大为原来的1.5倍
			System.arraycopy(array, 0, o, 0, length);//把原来的数据copy到心数据中
			array = o ;//让原来的数组array指向数组o
		}
		array[length] = data;
		length ++ ;
	}
	
	public T poll(){//实现出队
		
		T result = (T)array[0];
		for(int i = 0 ;i < length - 1; i++ ){
			array[i] = array[ i + 1]; 
		}
		length --;
		return result;
		
	}
	public T peek(){//返回队顶元素,但是不出队
		if(length == 0 ){
			return null ;
		}else{
			
			return (T)array[0];
		}
		
	}
	
	public boolean isEmpty(){
		return length == 0;
	}
	
	
	public static void main(String[] args) {
		自己实现队列
   
   
    
     queue = new 自己实现队列
    
    
     
     ();
		queue.push("A");
		queue.push("B");
		queue.push("C");
		
		queue.push("D");
		queue.push("E");
		queue.push("F");
		queue.push("G");
		
		queue.push("H");
		queue.push("I");
		queue.push("J");
		queue.push("K");
		queue.push("L");
		queue.push("M");
		
		
		
	   while(!queue.isEmpty()){
		  System.out.println(queue.poll());//出队
	   }
		
	}
	
}



    
    
   
   
  
  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值