package e_link.E_queue;
public class FirstLastList {
private Link first;
private Link last;
public FirstLastList() {
first = null;
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.data;
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;
}
}
}package e_link.E_queue;
public class Link {
public long data;
public Link next;
public Link(long d) {
data = d;
}
public void displayLink() {
System.out.println(data);
}
}package e_link.E_queue;
public class LinkQueue {
private FirstLastList theList;
public LinkQueue() {
theList = new FirstLastList();
}
public boolean isEmpty() {
return theList.isEmpty();
}
public void insert(long dd) {
theList.insertLast(dd);
}
public long remove() {
return theList.deleteFirst();
}
public void displayQueue() {
theList.displayList();
}
}package e_link.E_queue;
/**
* 链表实现队列
*
* @author Administrator
*
*/
public class LinkQueueApp {
public static void main(String[] args) {
LinkQueue linkQueue = new LinkQueue();
linkQueue.insert(10);
linkQueue.insert(20);
linkQueue.insert(30);
linkQueue.displayQueue();
linkQueue.insert(40);
linkQueue.insert(50);
linkQueue.insert(60);
System.out.println("-------------");
linkQueue.displayQueue();
linkQueue.remove();
linkQueue.remove();
linkQueue.remove();
linkQueue.remove();
System.out.println("-------------");
linkQueue.displayQueue();
}
}
public class FirstLastList {
private Link first;
private Link last;
public FirstLastList() {
first = null;
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.data;
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;
}
}
}package e_link.E_queue;
public class Link {
public long data;
public Link next;
public Link(long d) {
data = d;
}
public void displayLink() {
System.out.println(data);
}
}package e_link.E_queue;
public class LinkQueue {
private FirstLastList theList;
public LinkQueue() {
theList = new FirstLastList();
}
public boolean isEmpty() {
return theList.isEmpty();
}
public void insert(long dd) {
theList.insertLast(dd);
}
public long remove() {
return theList.deleteFirst();
}
public void displayQueue() {
theList.displayList();
}
}package e_link.E_queue;
/**
* 链表实现队列
*
* @author Administrator
*
*/
public class LinkQueueApp {
public static void main(String[] args) {
LinkQueue linkQueue = new LinkQueue();
linkQueue.insert(10);
linkQueue.insert(20);
linkQueue.insert(30);
linkQueue.displayQueue();
linkQueue.insert(40);
linkQueue.insert(50);
linkQueue.insert(60);
System.out.println("-------------");
linkQueue.displayQueue();
linkQueue.remove();
linkQueue.remove();
linkQueue.remove();
linkQueue.remove();
System.out.println("-------------");
linkQueue.displayQueue();
}
}