java学习之—链表(3)

java

/**

* 使用链表实现队列

* 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();

}

}

  

以上是 java学习之—链表(3) 的全部内容, 来源链接: utcz.com/z/393864.html

回到顶部