队列

来源:互联网 发布:淘宝付了定金已下架 编辑:程序博客网 时间:2024/05/18 15:52

一个简单的队列


package queue;public class Queue { // 队列类private int maxSize; // 队列长度,由构造函数初始化private int[] queArray; // 队列private int front; // 队头private int rear; // 队尾private int num; // 元素的个数public Queue(int s) { // 构造函数maxSize = s;queArray = new int[maxSize];front = 0;rear = -1;num = 0;}public void add(int j) { // 进队列if (rear == maxSize - 1) // 处理循环rear = -1;queArray[++rear] = j; // 队尾指针加1,把值j加入队尾num++;}public int poll() { // 取得队列的队头元素,且从队列移除int temp = queArray[front++]; // 取值和修改队头指针if (front == maxSize) // 处理循环front = 0;num--;return temp;}public int peek() { // 取得队列的队头元素,但不从从队列移除return queArray[front];}public boolean isEmpty() { // 判队列是否为空。若为空返回一个真值,否则返回一个假值。return (num == 0);}public boolean isFull() { // 判队列是否已满。若已满返回一个真值,否则返回一个假值。return (num == maxSize);}public int size() { // 返回队列的长度return num;}public static void main(String[] args) {Queue que=new Queue(3);que.add(1);que.add(2);que.add(3);que.add(4);int s=que.size();System.out.println(s);for(int i=0;i<s;i++){System.out.println(que.poll());}}}


0 0
原创粉丝点击