Create a second empty Queue Q2.
Once you have the first Queue filled we are going to use a technique called Sieve of Eratosthenes which uses first queue to fill the second queue. You will need to look at the algorithm for this https://en.wikipedia.org/wiki/Sieve_of_Eratosthenes
Here is the algorithm;
1. Dequeue 1st element in Q1 (which will be 2). You will need to remember the value of this element â€“ we will call it X.
2. Enqueue this element into Q2 (Q2 is the list of primes)
3. Iterate and Dequeue each successive element of Q1
If the value is divisible by X, go to the next element
if the value is not divisible by X enqueue back onto Q1, go to the next element.
4. Print the values of Q1 and Q2 after each time through.
5. When done go back to the beginning of the Q1 and repeat steps 1-3 (the first value will be 3 the second time around)
Sample output with input 10
Iteration 0: Q1 = 2 3 4 5 6 7 8 9 10, Q2 = ,
Iteration 1: Q1 = 3 5 7 9, Q2 = 2
Iteration 2: Q1 = 5 7, Q2 = 2 3
Iteration 3: Q1 = 7, Q2 = 2 3 5
Iteration 4: Q1 = , Q2 = 2 3 5 7
You MUST use your Link/Stack code and extend to this algorithm.