数组实现队列

		public class ArrayQueue {
		
		    private int MaxSize;//最大容量
		    private int font = -1;//头指针
		    private int rear = -1;//尾指针
		    private int[] arr;//模拟队列的数组
		
		    //创建队列
		    public ArrayQueue(int maxSize) {
		        this.MaxSize = maxSize;
		        arr = new int[this.MaxSize];
		    }
		
		    //判空
		    public boolean isEmpty() {
		        if (font == rear) return true;
		        else return false;
		    }
		
		    //判满
		    public boolean isFull() {
		        if (rear == MaxSize - 1) return true;
		        else return false;
		    }
		
		    //增加数据
		    public void add(int sum) {
		        if (isFull()) {
		            System.out.println("队列满");
		            return;
		        }
		        arr[++rear] = sum;
		//        rear++;
		//        arr[rear] = sum;
		    }
		
		    //出队列数据:从头部取出数据
		    public int getQueue() {
		        if (isEmpty()) {
		            throw new RuntimeException("队列空");
		        }
		        font++;
		        return arr[font];
		    }
		
		    //显示队列的所有数据
		    public void showQueue(){
		        if (isEmpty()) {
		            System.out.println("队列空");
		            return;
		        }
		        for(int i=font+1;i<=rear;i++){
		            System.out.print(arr[i]+",");
		        }
		    }
		}
posted @ 2020-05-11 21:30  爱敲代码的小游子  阅读(4)  评论(0)    收藏  举报