Java实现一个简单的队列---Queue

对于队列的应用的很多,但是我觉得理解队列最重要的是要记住,先进先出,一端插入,一端删除。      (1)队列的定义:队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,进行插入操作的端称为队尾,进行删除操作 的端称为队头。理解好定义,那么我们就通过代码再来分析一下:public class Queue {
摘要由CSDN通过智能技术生成

对于队列的应用的很多,但是我觉得理解队列最重要的是要记住,先进先出,一端插入,一端删除。

      (1)队列的定义:队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,进行插入操作的端称为队尾, 进行删除操作 的端称为队头。

理解好定义,那么我们就通过代码再来分析一下:

public class Queue<E> {
	
	private int front;//队头一端,只允许删除
	
	private int rear;//队尾一端,只允许插入操作
	
	private int max_size =16;
	
	private Object[] data;
	
	public Queue() {
		this(10);
	}
	public Queue(int size){
		if(size<0){
			throw new IllegalArgumentException("队列初始化失败,原因是:"+size);
		}
		this.max_size = size;
		front = rear = 0;
		data = new Object[max_size];
	}
	//判断是否为空
	public boolean isEmpty(){
		return rear==front?true:false;
	}
	//入队
	public boolean add(E e){
		if(rear==max_
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值