package queue; /** * Created by wangzheng on 2018/10/9. */ // ç¨æ°ç»å®ç°çéå public class ArrayQueue { // æ°ç»ï¼itemsï¼æ°ç»å¤§å°ï¼n private String[] items; private int n = 0; // head表示é头䏿 ï¼tail表示é尾䏿 private int head = 0; private int tail = 0; // ç³è¯·ä¸ä¸ªå¤§å°ä¸ºcapacityçæ°ç» public ArrayQueue(int capacity) { items = new String[capacity]; n = capacity; } // å ¥é public boolean enqueue(String item) { // 妿tail == n 表示éåå·²ç»æ»¡äº if (tail == n) return false; items[tail] = item; ++tail; return true; } // åºé public String dequeue() { // 妿head == tail 表示éå为空 if (head == tail) return null; // 为äºè®©å ¶ä»è¯è¨çåå¦ççæ´å æç¡®ï¼æ--æä½æ¾å°åç¬ä¸è¡æ¥åäº String ret = items[head]; ++head; return ret; } public void printAll() { for (int i = head; i < tail; ++i) { System.out.print(items[i] + " "); } System.out.println(); } }