队列简介
一、概念:
1、队列是一个有序列表,可以用数组和链表来实现。
2、遵循先进先出的原则。
二、数组队列:
设计:
- front指向队列第一个元素的前一个位置。初始值为-1。
- rear指向队列的最后一个元素的位置。初始值为-1。
- 队列满时,rear==maxSize-1(maxSize为初始化数组的大小)
- 队列空时,front==rear
缺点:只能使用一次,没有达到复用的效果。
代码:
public class ArrQueue {
private int maxSize;
private int front;
private int rear;
private int[] arr;
public ArrQueue(int maxSize){
this.maxSize = maxSize; //数组的最大容量
this.front = -1;//指向第一个元素的前一个位置
this.rear = -1;//指向最有一个元素的位置
this.arr = new int[maxSize]; //该队列设置容量
}
//判满
public boolean isFull() {
if (rear == maxSize-1){
return true;
} else {
return false;
}
}
//判空
public boolean isEmpty(){
if (front == rear){
return true;