Let Q denote a queue containing sixteen numbers and S be an empty stack. Head(Q) returns the element at the head of the queue Q without removing it from Q. Similarly Top(S) returns the element at the top of S without removing it from S. Consider the algorithm given below.
while Q is not empty do {
if S is empty OR Top(S)<= Head(Q) then {
x = Dequeue(Q)
Push(S, x)
} else {
x = Pop(S)
Enqueue(Q,x)
}
}
The maximum possible number of iterations of the while loop in the algorithm is ?