import java.util.Stack; import java.util.Queue; import java.util.LinkedList; public class Main { // Passo 1: Criando a lista e inserindo os números [1, 2, 3, 4, 5] LinkedList<Integer> lista = new LinkedList<>(); lista.add(1); lista.add(2); lista.add(3); lista.add(4); lista.add(5); // Passo 2: Remover os números da lista e colocar na pilha Stack<Integer> pilha = new Stack<>(); while (!lista.isEmpty()) { pilha.push(lista.removeFirst()); // Remove o primeiro e coloca na pilha } // Passo 3: Remover os números da pilha e colocar na fila Queue<Integer> fila = new LinkedList<>(); while (!pilha.isEmpty()) { fila.offer(pilha.pop()); // Remove da pilha e coloca na fila } // Passo 4: Inserir os números [6, 7, 8, 9, 10] na lista lista.add(6); lista.add(7); lista.add(8); lista.add(9); lista.add(10); // Passo 5: Repetir Passo 2 e Passo 3 com os novos números while (!lista.isEmpty()) { pilha.push(lista.removeFirst()); // Remove da lista e coloca na pilha } while (!pilha.isEmpty()) { fila.offer(pilha.pop()); // Remove da pilha e coloca na fila } // Passo 6: Exibir os números na fila } }
Standard input is empty
Passo 1: Lista inicial: [1, 2, 3, 4, 5] Passo 2: Pilha após inserção: [1, 2, 3, 4, 5] Passo 3: Fila após inserção: [5, 4, 3, 2, 1] Passo 4: Lista após inserção: [6, 7, 8, 9, 10] Passo 2 (repetido): Pilha após inserção: [6, 7, 8, 9, 10] Passo 3 (repetido): Fila após inserção: [5, 4, 3, 2, 1, 10, 9, 8, 7, 6] Passo 6: Números na fila (ordem final): [5, 4, 3, 2, 1, 10, 9, 8, 7, 6]