package queue;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Stack;

/**
 *
 * @author Winston Prakash
 */
public class QueueTester {
    
    /**
     * Create some random data
     */
    public static int[] createData(){
        List<Integer> data = new ArrayList<Integer>();
        for (int i = 0; i < 11; i++){
            data.add(i);
        }
        Collections.shuffle(data);
        int[] dataArray = new int[data.size()];
        for (int i = 0; i < dataArray.length; i++){
            dataArray[i] = data.get(i);
        }
        return dataArray;
    }
    
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        int[] dataArray = createData();
        //Queue<Integer> queue = new ArrayQueue<Integer>();
        Queue<Integer> queue = new LinkedListQueue<Integer>();
        System.out.println("\nQueue");
        for(int i=0; i< dataArray.length; i++){
            queue.enqueue(dataArray[i]);
            System.out.print(dataArray[i] + " ");
        }
        System.out.println();
        for(int i=0; i< dataArray.length; i++){
            System.out.print(queue.dequeue() + " ");
        }
        System.out.println();
        // Throws empty stack exception
        //stack.pop();
        //stack.peek();
        queue.dequeue();
    }
    
}