O(∩_∩)O哈哈~第一次用Java写类。忽然感觉面向对象有的时候写起来感觉很自然。不过在ACM比赛基本不要啥面向对象。贴代码吧。
class Queue{ private int rear; private int front; private int []element; private int maxSize; public Queue(){ maxSize = 100; element = new int [maxSize]; rear = 0; front = 0; } public Queue(int size){ maxSize = size; element = new int [size]; rear = 0; front = 0; } void makeEmpty(){ rear = front = 0; } boolean empty(){ return front == rear; } boolean isFull(){ return front == (rear + 1) % maxSize; } int size(){ return (rear - front + maxSize) % maxSize; } boolean push(int num){ if (!isFull()) { element[rear] = num; rear = (rear + 1) % maxSize; return true; } else { return false; } } int front(){ if (!empty()) { return element[front]; } else { return -1; } } boolean pop(){ if (!empty()) { front = (front + 1) % maxSize; return true; } else { return false; } } } public class Main{ public static void main(String[] args){ Queue queue = new Queue(101); for (int i = 0; i < 100; i++) { queue.push(i); } for (int i = 0; i < 100; i++) { System.out.print(queue.front() + " "); queue.pop(); } System.out.println(); System.out.println(queue.empty()); System.out.println(queue.isFull()); } }