队列(数组模拟)

//队列(数组模拟)
class Queue{
	 private int[] queue; //队列函数
	 int length;
	 int head;           //头指针
	 int tail;            //尾指针
	 int num;           //丢列中元素个数
	 public Queue(){
	}
	 public Queue(int s){     //构造队列函数
	 	  length=s;
	 	  queue=new int[length];      //s为队列长度
	 	  head=0;
	 	  tail=-1;
	 	  num=0;
	}
	public void inQueue(int e){  //入队列
		 if(tail+1==length){
		 	 System.out.println("溢出了,元素"+e+"没有入队列!!!");
		 	 return;
		}
		 queue[++tail]=e;
		 num++;
	}
	public int outQueue(){      //出队列
		 if(head==length){
		 	 System.out.println("队列里没有元素!!!");
	  	}
		int temp=queue[head++];
		num--;
		return temp;
	}
	public int readQueue(){      //出队列(只读不操作队列)
		 if(head==length){
		 	 System.out.println("队列里没有元素!!!");
	  	}
		
		return queue[head];
	}
	public void isEmpty(){  //是否为空
		 if(num==0){
		 	  System.out.println("队列里为空!!!");
		 }
	}
	public void isFull(){   //是否满了
		 if(tail==length-1){
		 	 System.out.println("队列已经满了!!!");
		}else{
		   System.out.println("队列没满!!!");
		  }
	}
	public int count(){      //队列中元素个数
		return num;
	}
}
class Main{
	 public static void main(String args[]){
	 	  Queue q=new Queue(5);q.isEmpty();
	 	  q.inQueue(2);
	 	  System.out.println("读出的队列元素是:"+q.readQueue());
	 	  System.out.println("取出的队列的头元素是:"+q.outQueue());
	 	  q.inQueue(3);
	 	  System.out.println("读出的队列元素是:"+q.readQueue());
	 	  System.out.println("取出的队列的头元素是:"+q.outQueue());
	 	  q.inQueue(4);
	 	  System.out.println("读出的队列元素是:"+q.readQueue());
	 	  System.out.println("取出的队列的头元素是:"+q.outQueue());
	 	  q.inQueue(5);q.isEmpty();
	 	  System.out.println("读出的队列元素是:"+q.readQueue());
	 	  System.out.println("取出的队列的头元素是:"+q.outQueue());
	 	  q.inQueue(6);q.isFull();
	 	  System.out.println("读出的队列元素是:"+q.readQueue());
	 	  System.out.println("取出的队列的头元素是:"+q.outQueue());
	 	  q.isEmpty();
	}
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值