

Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
O seguinte pseudocódigo implementa a operação chamada de “remove caracteres” que recebe uma string (variável chamada “texto”) e um char (variável chamada “letra”). A cada ocorrência de “letra” na string “texto”, o caractere anterior é removido, assim como a própria “letra”. Veja um exemplo após a aplicação da operação “remove caracteres” na string “Aman#ha tem p#rova”, onde a variável letra tem valor ‘#’: “Amaha tem rova”. O pseudocódigo abaixo usa uma estrutura de dados (chamada de “EstruturaDados” no pseudocódigo abaixo), onde utilizamos as operações de remoção (removeED), inserção (adicionarED) e tamanho (tamanhoED) dessa estrutura de dados, onde a operação de remoção remove e retorna um elemento da estrutura de dados, a operação de inserção adiciona um elemento e a operação de tamanho retorna quantos elementos estão na estrutura de dados.
EstruturaDados ed;
Para (cada i = 0 até n - 1){ /
string texto
Se (texto[i] == letra) removeED(ed);
Senão adicionarED(ed, texto[i]);
}
i = tamanhoED(ed);
Criar uma nova variável string chamada de textoAlterado de
tamanho i;
Enquanto (i > 0){
i--;
textoAlterado[i] = removeED(ed);
}
Assinale a alternativa que indica qual deve ser a estrutura de dados utilizada no lugar de “EstruturaDados” para que o pseudocódigo acima, caso implementado em uma linguagem de programação, execute corretamente a operação “remove caracteres”.
Fila.
Heap.
Pilha.
Árvore AVL.
Árvore Rubro Negra.