Informática, perguntado por thaylorbarros, 1 ano atrás

Utilizaremos esta convenção gráfica para filas: fila = { primeiro,... , último}

Considere os métodos clássicos enqueue, dequeue e peek (peek retorna o elemento na frente da fila, sem eliminá-lo).
Seja uma fila, inicialmente com os elementos a seguir:

fila = { 8, 5, 3, 4 }

Considere que executamos estas operações com a fila anterior:

f.enqueue("12");
f.enqueue("11");
f.enqueue("9");
Object a = f.dequeue();
Object b = f.dequeue();
f.enqueue(a);
f.enqueue(b);
f.enqueue(f.dequeue());
f.enqueue("27");

Qual será o estado final da fila, depois de executar os comandos antes mencionados?

A. fila = { 4, 12, 11, 9, 8, 3, 27 }.
B. fila = { 11, 9, 8, 5, 3, 27 }.
C. fila = { 9, 8, 5, 3, 27 }.
D. fila = { 4, 12, 11, 9, 8, 5, 3, 27 }.
E. fila = { 4, 11, 9, 8, 5, 3, 27 }.

Soluções para a tarefa

Respondido por academicoiffdavi
6

Olá!

Inicialmente a nossa fila (f) tem os seguintes valores {8,5,3,4}

O comando enqueue("A") faz com que o valor "A" vá para o final da fila, e o comando dequeue() retorna o primeiro valor da fila, ou seja, o que está a mais tempo nela.

Portanto:

Vamos executar cada comando e ver como a fila se comporta.

1°)f.enqueue("12");

f = {8,5,3,4,12}

2°)f.enqueue("11");

f = {8,5,3,4,12,11}

3°)f.enqueue("9");

f = {8,5,3,4,12,11,9}

4°)Object a = f.dequeue();

f = {5,3,4,12,11,9}

a=8

5°)Object b = f.dequeue();

f = {3,4,12,11,9}

b=5

6°)f.enqueue(a);

f = {3,4,12,11,9,8}

7°)f.enqueue(b);

f = {3,4,12,11,9,8,5}

8°)f.enqueue(f.dequeue());

Nessa parte, O primeiro elemento da fila é levado para a última posição

f = {4,12,11,9,8,5,3}

9°)f.enqueue("27");

f = {4,12,11,9,8,5,3,27}

Portanto, a resposta é a letra D

Espero ter ajudado!

Perguntas interessantes