Frist last list : Custom List « Collections Data Structure « Java






Frist last list

 
class Link {
  public long dData; 

  public Link next; 

  public Link(long d){
    dData = d;
  }

  public void displayLink(){
    System.out.print(dData + " ");
  }
}

public class FirstLastList1 {
  private Link first; 

  private Link last; 

  public FirstLastList1() {
    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.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 FirstLastList1 theList;

  public LinkQueue() {
    theList = new FirstLastList1();
  }

  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: ");
    theList.displayList();
  }

  public static void main(String[] args) {
    LinkQueue theQueue = new LinkQueue();
    theQueue.insert(20);
    theQueue.insert(40);

    theQueue.displayQueue();

    theQueue.insert(60);
    theQueue.insert(80);

    theQueue.displayQueue();

    theQueue.remove();
    theQueue.remove();

    theQueue.displayQueue();
  }
}

           
         
  








Related examples in the same category

1.Redundancy Checker
2.Doubly-linked list with data structureDoubly-linked list with data structure
3.Sorted listSorted list
4.List with first and last referencesList with first and last references
5.Another Link list
6.A growable array of int values, suitable for use with multiple threads
7.Implements a "rolling list".