java学习之—链表(3)
/** * 使用链表实现队列 * Create by Administrator * 2018/6/19 0019 * 下午 4:37 **/ public class Link { public long dData; public Link next; public Link(long d){ this.dData = d; } public void displayLink(){ System.out.print(dData + " "); } } class FirstLastList{ private Link first; private Link last; public FirstLastList(){ this.first = null; this.last = null; } public boolean isEmpty(){ return first == null; } public void insertLast(long dd){ Link newLink = new Link(dd); if(isEmpty()){ first = newLink; }else { last.next = newLink; } last = newLink; } public long deleteFirst(){ long temp = first.dData; if(first.next == null){ last = null; } first = first.next; return temp; } public void displayList(){ Link current = first; while (current != null){ current.displayLink(); current = current.next; } System.out.println(""); } } class LinkQueue{ private FirstLastList theList; public LinkQueue(){ this.theList = new FirstLastList(); } public boolean isEmpty(){ return theList.isEmpty(); } public void insert(long j){ theList.insertLast(j); } public long remove(){ return theList.deleteFirst(); } public void displayQueue(){ System.out.print("Queue (front-->rear): "); theList.displayList(); } public static void main(String[] args) { LinkQueue linkQueue = new LinkQueue(); linkQueue.insert(20); linkQueue.insert(40); linkQueue.displayQueue(); linkQueue.insert(60); linkQueue.insert(80); linkQueue.displayQueue(); linkQueue.remove(); linkQueue.remove(); linkQueue.displayQueue(); } }
(转载请注明花儿为何那样红博客)