標籤:
java實現鏈隊列的類代碼:
package linkqueue;public class LinkQueue {class Element{Object elem;Element next;}private Element front;private Element rear;private Element header = null;/** * 初始化隊列 * */void initQueue(){header = new Element();front = new Element();rear = new Element();front=header;rear=header;}/** * 向隊列插入元素 * */void enQueue(Object o){Element e=new Element();e.elem=o;if(rear==header)//第一次插入元素{rear=e;header.next=e;front.next=e;}else{rear.next=e;rear=e;}}/** * 出隊 * */Object deQueue(){Object o = null;if(rear==header){System.out.println("隊列為空白!");}else{o=front.next.elem;if(front.next==rear)//隊中只有一個元素{front.next=header;rear=header;}else//隊中大於一個元素{front.next=front.next.next;}}return o;}/** * 列印佇列 * */void print(){System.out.print("列印佇列:");Element temp = front;while(temp!=rear){System.out.print(temp.next.elem+"\t");temp=temp.next;}System.out.println();}}
測試類別代碼:
package linkqueue;public class LinkQueueMain {public static void main(String[] args) {LinkQueue lQueue = new LinkQueue();lQueue.initQueue();System.out.println("出隊操作:"+lQueue.deQueue());lQueue.enQueue(1);lQueue.enQueue(2);lQueue.enQueue(3);lQueue.enQueue(4);lQueue.enQueue(5);lQueue.print();System.out.println("出隊操作:"+lQueue.deQueue());System.out.println("出隊操作:"+lQueue.deQueue());lQueue.print();System.out.println("出隊操作:"+lQueue.deQueue());System.out.println("出隊操作:"+lQueue.deQueue());lQueue.print();System.out.println("出隊操作:"+lQueue.deQueue());System.out.println("出隊操作:"+lQueue.deQueue());lQueue.print();}}
java實現鏈隊列