Exercise 10.1-3

Using Figure 10.2 as a model, illustrate the result of each operation in the sequence \(\text{ENQUEUE(}Q\text{, 4)}\), \(\text{ENQUEUE(}Q\text{, 1)}\), \(\text{ENQUEUE(}Q\text{, 3)}\), \(\text{DEQUEUE()}\), \(\text{ENQUEUE(}Q\text{, 8)}\), and \(\text{DEQUEUE()}\) on an initially empty queue \(Q\) stored in array \(Q[1...6]\).

\[\begin{split} \text{Initial} & \rightarrow \begin{array}{c c c c c c c } & Q_1 & Q_2 & Q_3 & Q_4 & Q_5 & Q_6 \\ & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} \\ \end{array} \\ \text{ENQUEUE(} Q \text{, 4)} & \rightarrow \begin{array}{c c c c c c } \hline & Q_1 & Q_2 & Q_3 & Q_4 & Q_5 & Q_6 \\ & 4 & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} \\ \end{array} \\ \text{ENQUEUE(} Q \text{, 1)} & \rightarrow \begin{array}{c c c c c c } \hline & Q_1 & Q_2 & Q_3 & Q_4 & Q_5 & Q_6 \\ & 4 & 1 & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} \\ \end{array} \\ \text{ENQUEUE(} Q \text{, 3)} & \rightarrow \begin{array}{c c c c c c } \hline & Q_1 & Q_2 & Q_3 & Q_4 & Q_5 & Q_6 \\ & 4 & 1 & 3 & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} \\ \end{array} \\ \text{DEQUEUE()}& \rightarrow \begin{array}{c c c c c c } \hline & Q_1 & Q_2 & Q_3 & Q_4 & Q_5 & Q_6 \\ & \bbox[gray, 10px]{} & 1 & 3 & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} \\ \end{array} \\ \text{ENQUEUE(} Q \text{, 8)} & \rightarrow \begin{array}{c c c c c c } \hline & Q_1 & Q_2 & Q_3 & Q_4 & Q_5 & Q_6 \\ & \bbox[gray, 10px]{} & 1 & 3 & 8 & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} \\ \end{array} \\ \text{DEQUEUE()}& \rightarrow \begin{array}{c c c c c c } \hline & Q_1 & Q_2 & Q_3 & Q_4 & Q_5 & Q_6 \\ & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} & 3 & 8 & \bbox[gray, 10px]{} & \bbox[gray, 10px]{} \\ \end{array} \\ \end{split}\]