Quick actions

cmd+k|ctrl+k

Navigation

Languages

Queue implementations

Snippet info

Language

Java

Visibility

public

Author

devernul

Created

2018-12-09T15:39:05Z

Updated

2018-12-09T15:42:27Z

class Main {
    public static void main(String[] args) {
        LinkedQueueOfStrings q = new LinkedQueueOfStrings();
        for (int i = 0; i < 100; i++) {
            q.enqueue(String.valueOf(i));
        }
        for (int i = 0; i < 100; i++) {
            System.out.println(q.dequeue());
        }
    }
}

class LinkedQueueOfStrings
{
    private Node first, last;
    private class Node
    {
        String item;
        Node next;
    }

     public boolean isEmpty()
     { return first == null; }
    
     public void enqueue(String item)
     {
         Node oldlast = last;
         last = new Node();
         last.item = item;
         last.next = null;
         if (isEmpty()) first = last;
         else oldlast.next = last;
     }
    
     public String dequeue()
     {
         String item = first.item;
         first = first.next;
         if (isEmpty()) last = null;
         return item;
     }
} 
INFO